Решение для ошибок JSLint
Я начал использовать JSLint. Я проверил свой код, и я получаю следующие ошибки:
Проблема в строке 92, символ 7: переместить вызов в символы, содержащие функцию.
})();
Проблема в строке 92, символ 7. Оберните весь немедленный вызов функции в скобках.
})();
Как исправить эту ошибку?
2 ответа
Я полагаю, что это означает, что вы должны переместить функцию, вызывающую паренсы, внутри оберточных паренов
(function() { /* code */ })()
Проблема заключается в двух последних паранах, которые выполняют функцию. Вот как jslint хочет, чтобы это выглядело так:
(function() { /* code */ }())
Я нашел хорошее объяснение здесь: http://james.padolsey.com/javascript/closures-in-javascript/
Первый набор скобок (вокруг "
function(){}
") не требуется, но используется, чтобы сделать очевидным, что функция вызывается немедленно, что делает очевидным, что выражение не обязательно возвращает эту функцию; вместо этого возвращается значение этой функции