【问题标题】:javascript syntax and jQuery source [duplicate]javascript语法和jQuery源[重复]
【发布时间】:2010-06-23 20:12:54
【问题描述】:

可能重复:
For the function (function($){})(), I’ve seen it with the word jQuery in it, why is that?

谁能解释一下 jQuery 源文件中使用的以下语法?我正在学习 jQuery 并尝试编写 jquery.ui.widget。

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

虽然我使用的是 jQuery,但我猜这实际上只是一个 JavaScript 问题。

谢谢, 克雷格

【问题讨论】:

标签: javascript jquery


【解决方案1】:

这定义了一个带有一个参数的匿名函数,称为$,然后调用传递jQuery 作为参数的函数。

【讨论】:

  • 啊……好吧,有道理。谢谢
【解决方案2】:

它被称为自执行匿名函数。与任何其他函数调用没有什么不同,除了函数是文字(没有名称),被包裹在括号中以使其成为有效的表达式,然后被调用。

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

与那段代码相同,它创建了一个私有命名空间,其中 window.jQuery 对象在函数体中被传递并引用为$,以防止命名空间冲突。

【讨论】:

    【解决方案3】:

    这是JavaScript module pattern 的示例。

    【讨论】:

      猜你喜欢
      • 2017-05-14
      • 1970-01-01
      • 2014-04-11
      • 2011-05-30
      • 2019-07-13
      • 2012-02-15
      • 2018-04-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多