В соответствии с руководством по стилю JavaScript JavaScript объявления функций не должны быть объявлены в блоках, поскольку это не является частью ECMAScript. Тем не менее, я не совсем понимаю, что считается блоком.
В частности, у меня есть функция-конструктор, и я хочу определить функцию в рамках этого конструктора. Будет ли это считаться функцией внутри блока, так как оно находится в наборе {}? Если это так, означает ли это, что каждое объявление функции должно быть глобальным?
Некоторый код для хорошей оценки:
НЕПРАВИЛЬНО (?)
function Constructor() {
function Shout () { alert('THE BEST UX IS IN ALL CAPS.'); }
}
ПРАВИЛЬНО (?)
function Constructor() {
var Shout = function () { alert('THE BEST UX IS IN ALL CAPS.'); };
}