Функция использовалась до того, как была определена - JSLint
JSLint не нравится этот код с надписью "'b' был использован до того, как было определено
var a = function () {
b();
},
b = function () {
alert("Hello, world!");
};
a();
но вполне доволен этим
var a, b;
a = function () {
b();
};
b = function () {
alert("Hello, world!");
};
a();
Но я нетопределяющий что-нибудь в моем втором фрагменте кода. Я простодекларирование переменная б.
Так почему же JSLint делает это? Есть ли причина, по которой я должен сначала объявить все свои функции?
PS Я понимаю, что мог бы просто изменить порядок a и b, но в реальном проекте мои функции являются обработчиками событий, а иногда они вызывают друг друга, поэтому это, вероятно, невозможно.