当函数以})结束时(jQuery)是什么意思;?

Him*_*ors 5 jquery

我试过谷歌,但谷歌似乎并不关心括号......

T.J*_*der 3

如果你看到这个:

(function($) {
    // ...code using $...
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

它做了两件事:

  1. 定义一个匿名函数$作为对 jQuery 的引用。
  2. 调用它,传入jQuery

你可以这样做:

function foo($) {
    // ...code using $...
}
foo(jQuery);
Run Code Online (Sandbox Code Playgroud)

...但这会产生一个不必要的符号。

所有这一切都是因为 jQuery 有 符号jQuery和 符号$,但是人们用来jQuery.noConflict()告诉 jQuery 返回$到 jQuery 加载时的状态的情况并不罕见,因为其他一些流行的库(Prototype 和 MooTools,仅举两个例子) ) 使用$,这可以让人们一起使用这些库jQuery。但您仍然可以$在函数内使用,因为参数掩盖了该符号在函数外部的含义。