在Javascript中,这种语法是什么意思?

Jie*_*eng 0 javascript jquery

我在查看jQuery插件时发现了这个片段,并想知道它实际上是做什么的

一个jQuery插件框架:

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

最近在nettuts中:

var STICKIES = (function () {
    ...
}()); 
Run Code Online (Sandbox Code Playgroud)

小智 7

这会创建一个匿名函数并直接调用它:这相当于

var fun = function(){};
fun();
Run Code Online (Sandbox Code Playgroud)

它用于jquery插件,以确保与定义全局变量'$'的其他库兼容.在你的插件sekeleton中,你将你的插件包装在一个匿名函数中,它接收一个名为'$'的参数(从而覆盖一个全局变量'$'),然后用'jQuery'作为参数调用这个匿名函数,所以有效$成为= jQuery,但仅限于该匿名函数.