inavo
@inavo

Зачем передавать самовызываемой функции параметр undefined?

Какой смысл передавать в функцию переменную undefined?
(function(Handlebars, undefined) {
//...
})(Handlebars);

Разве использование зарезервированных названий в качестве переменных не является прохим тоном?
  • Вопрос задан
  • 91 просмотр
Решения вопроса 2
Lynn
@Lynn
nginx, js, css
Потому что по недосмотру, undefined не зарезервированное имя (как, например null) и кто-то может написать undefined=42.

Поэтому авторы библиотек таким образом гарантируют, что undefined точно undefined
Ответ написан
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
Помимо защиты от подмены, уже описанной в других случаях, аргумент функции будет сокращен до 1 буквы при манглинге кода, что по сравнению с использованием глобального значения позволяет экономить 8 байт бандла на каждое использование undefined
Аналогично часто делают с window и document
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы