'offsetLeft'|'offsetTop'
return function(x) {, результат выполнения функции decorate (что тоже функция) сохраняется в переменной facfunction decorator(func) {
let cache = new Map();
return function decoratedFunc(x) {
if (cache.has(x)) {
return cache.get(x);
};
let result = func(x);
cache.set(x, result);
return result
}
}
obj.fac = decorator(obj.fac); // obj.fac === decoratedFunc
decorator(func, args)func.call(this, x) надо делать, чтобы не потерять контекст.
export const chromeRunTime = chrome.runtimechrome.runtime занимает столько же места, в чем смысл то?
для передачи ctx во вспомогательные функции без явной их передачи в качестве параметров.
timerToHide$не может сработать раньше, чем timerToShow$ по причине timer(showTime) всегда раньше чем timer(showTime + hideTime)