(function(){...})(); // Это понятно.
(function(){...})(window); // ??? причём без параметра
Например Google Analytics так делает: https://www.google-analytics.com/analytics.js
((w, d) => {
// Каждое появление w здесь экономит 5 символов
w.console.log(d.title);
})(window, document);
const somePlugin = (window) => ({
// код плагина использует window
log(...args) { window.console.log(...args); }
});
const mock = {log: [], console: {log: (...args) => mock.log.push(args)}}
// но реализацию window можно заменить
let p = somePlugin(mock);
p.log(1, 2, 3);
p.log(4);
console.log(JSON.stringify(mock.log));
Доступ к локальной переменной чуть быстрее, чем к глобальной(но это не точно) =)
Если функция использует this
– это подразумевает работу с объектом. Но и прямой вызов func()
технически возможен, a в режиме use strict
вместо глобального объекта this
будет undefined
.
function func() {
"use strict";
alert( this ); // выведет undefined (кроме IE9-)
}
func();
Виртуальный выделенный сервер (VDS) становится отличным выбором
ЗдравствуйтеПодскажите пожалуйста, как правильно перевести массив из php в js так, что бы внутри массива order создавались новые объекты, но при...
Доброго времени! Пробую сверить время в формате ЧЧ:ММ есть функция которая через str_replace вырезает из текущего времени формата Y-m-d H:i:s (2017-12-02...