Aej*_*jay 5 javascript function jslint iife
以下是在闭包中定义匿名函数,调用函数并忘记它的方法:
(function () { "do stuff"; })();
Run Code Online (Sandbox Code Playgroud)
这用于维持有限的范围而不向脚本添加批量(IIFE:立即调用的函数表达式).
如果您希望立即执行某个功能,同时仍保留该功能以供将来使用,如下所示:
var doThing;
(doThing = function () { "do stuff"; })();
Run Code Online (Sandbox Code Playgroud)
这适用于我测试的浏览器(Chrome,FF,IE8,IE10),但这不会传递JSLint(错误调用).这样做有兼容性问题吗?
是否有一种方法可以实现这一点,JSLint看起来很友好?
如果绝对需要传递jslint,那么:
var doThing;
(doThing = function () { "do stuff"; }).call();
Run Code Online (Sandbox Code Playgroud)
应该做的工作.
编辑
在期间通过params .call
var doThing;
(doThing = function (param1, param2) { 'do stuff'; }).call(this, arg1, arg2);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3692 次 |
| 最近记录: |