0

我有一个简单的问题。

我找到了这段代码,但我不知道这个说法

!function ($) {    
   // (...)
}(window.jQuery);

为什么放在函数之前?

我在 bootstrap.js 文件中找到了这个,我真的很想知道。

谢谢!

4

2 回答 2

2

正如 nnnnnn 提到的,它是重复的。代码正在执行匿名函数,同时将 window.jQuery 作为参数传递,该参数将在函数内部以 $ 的形式引用。这允许使用 $ 来引用 jQuery,而不会与任何其他可能使用美元符号的库发生冲突。

这是代码的可读性更高的版本:

(function($){
    // here, $ references jQuery and any variable or function 
    // declared here cannot be overridden outside of this function
})(window.jQuery)
于 2013-07-16T22:23:33.477 回答
-1

这 !如果无法解析语句,则将始终将语句解析为 true。

你可以通过使用看到这一点,

javascript:alert(!function(){}())

结果响应为真

于 2013-07-16T22:24:15.263 回答