关于javascript:为什么要创建一个匿名函数! 在它之前?

Why create an anonymous function with a ! before it?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
What does the exclamation mark do before the function?

下面的片段中的!有什么意义?

1
2
3
4
5
!function ($) {

   // code

}(window.jQuery);

这种语法在Twitter的bootstrap.js中广泛使用


它们在声明后立即调用函数(以window.jQuery作为参数)

另一种语法是:

1
2
3
4
5
(function ($) {

   // code

})(window.jQuery);

有些人更关心一个角色而不是可读性