【问题标题】:In Javascript, what does this syntax mean?在 Javascript 中,这种语法是什么意思?
【发布时间】:2010-08-11 12:39:35
【问题描述】:

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

一个 jQuery 插件框架:

(function($) {
    ... 
})(jQuery); 

最近在nettuts:

var STICKIES = (function () {
    ...
}()); 

【问题讨论】:

标签: javascript jquery


【解决方案1】:

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

var fun = function(){};
fun();

它在 jquery 插件中使用以确保与定义全局变量“$”的其他库的兼容性。在您的插件 sekeleton 中,您将插件包装在一个匿名函数中,该函数接收一个名为“$”的参数(从而覆盖全局变量“$”),然后使用“jQuery”作为参数调用此匿名函数,因此有效地 $ 变为= jQuery,但仅限于该匿名函数内。

【讨论】:

    【解决方案2】:

    第一部分:

    function($) {
        ... 
    }
    

    创建一个匿名函数。 第二部分:用大括号包裹这个函数,(jQuery);jQuery 作为参数调用函数(可通过函数中的$ 使用)。

    nettuts 然后将调用结果保存在变量中。

    【讨论】:

      【解决方案3】:

      第一个函数表示 $ 被 jQuery 覆盖,如果 你给脚本中的“$”赋予了不同的含义。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-10-15
        • 1970-01-01
        • 2013-11-02
        • 2011-01-19
        • 2016-03-30
        • 1970-01-01
        • 2010-10-05
        • 1970-01-01
        相关资源
        最近更新 更多