Подтвердить что ты не робот

Ошибка jsLint: "somefunction() использовалась до того, как она была определена"

Почему JSLint жалуется, если что-то использует функцию, которая еще не определена? Дело в том, что функция определена - и если это что-то вызывает эту функцию, эта функция существует, и все будет работать.

Взгляните на код ниже:

function foo()
{
   // calls bar()
};

function bar()
{
   // calls foo()
};

Невозможно организовать 2 метода таким образом, чтобы это сделало JSLint счастливым. Как мне решить эту проблему?

4b9b3361

Ответ 2

JSLint не может справиться с этим, насколько я знаю, но JSHint, основанный на JSLint, решает эту проблему надлежащим образом.

Просто используйте свойство latedef и установите значение "false". В случае, если вы все же хотите определить эти типы проблемных определений переменных, но хотите использовать выражения функций и разрешить подъем этих функций, вы можете установить "latedef": "nofunc".

Отметьте здесь.