Joh*_*nny 6 javascript jquery twitter-bootstrap
所以我只是通过Twitter阅读新的Bootstrap(2.0)的来源,并注意到在自动调用匿名函数之前有一个感叹号.当我看到这个时,我立刻想到"哦,废话,有一个新的,更好的方法来做到这一点?".
你自己看!
无论如何,有什么区别?必须有一个原因,因为他们在所有JavaScript插件中一致地使用它(对于Bootstrap).
我注意到的另一件事是在此之后"使用严格".我不认为这与我之前的调查有关,但任何人都可以解释一下吗?
谢谢!
Ada*_*kis 14
function(){} ();
Run Code Online (Sandbox Code Playgroud)
就其本身而言(参照点的评论)是不会有效的,因为
function() {}
Run Code Online (Sandbox Code Playgroud)
是一个函数声明.要立即调用它,您需要让JavaScript引擎将该函数视为表达式.人们通常这样做
(function(){}) (); //more common
(function(){} ()); // Papa Crockford's preference:
Run Code Online (Sandbox Code Playgroud)
同
!function(){}();
Run Code Online (Sandbox Code Playgroud)
简单地说是同一件事的速记版本.
如果你有2个脚本:
script1.js:
(function(){
})()
Run Code Online (Sandbox Code Playgroud)
script2.js:
(function(){
})()
Run Code Online (Sandbox Code Playgroud)
你连接它们,你得到:
(function(){
})()
(function(){
})()
Run Code Online (Sandbox Code Playgroud)
这会导致错误,而:
!function(){
}()
!function(){
}()
Run Code Online (Sandbox Code Playgroud)
不.
| 归档时间: |
|
| 查看次数: |
373 次 |
| 最近记录: |