Как кратко назначить и немедленно вызвать переменную функции?
Ниже приведен метод определения анонимной функции в замыкании, ее вызова и ее забытия:
(function () { "do stuff"; })();
Это используется для поддержания ограниченной области без добавления большого объема к сценарию (IIFE: выражение для немедленного вызова функции).
Что делать, если выМы надеемся немедленно выполнить функцию, сохраняя ее для дальнейшего использования, как показано ниже:
var doThing;
(doThing = function () { "do stuff"; })();
Это работает в браузерах, которые яМы протестировали (Chrome, FF, IE8, IE10), но это не проходит JSLint (Bad Invocation). Есть ли какие-либо проблемы совместимости с этим?
Есть ли способ сделать это, на что любезно смотрится JSLint?