【问题标题】:Javascript new way to define object properties and functions? [duplicate]Javascript 定义对象属性和函数的新方法? [复制]
【发布时间】:2011-08-24 07:42:31
【问题描述】:

可能重复:
What is the purpose of wrapping whole Javascript files in anonymous functions like “(function(){ … })()”?

我多次偶然发现这种不同寻常的编码方式,而且它似乎变得流行起来。

(function (variable) {
    // properties or methods go here

    // some more stuff
})(variable)

我什至很难研究它,因为我什至不知道它叫什么。我已经使用 jquery 使用它,但我仍然不知道它是如何使用的 有效。

示例:

(function ($) {
    ...
        // code to manipulate the dom
    function init() {
        .....
        }

    $(document).ready(function () {
        init();
    });
})(jQuery);

我只使用它是因为我正在更新其他开发人员制作的一些代码。

这样编码有什么好处吗?有什么地方可以让我了解更多信息吗? 如果有人理解我的问题,很高兴看到一些讨论这个问题的文章,或者你对如何制作自己的问题有一些见解。

谢谢

伊布

【问题讨论】:

  • 我知道它可能是重复的,但我在堆栈溢出时找不到任何东西,因为我不知道它是如何被调用的
  • 不用担心,但我链接的问题有你的答案。
  • 请更正您的示例,您通常使用带有 jquery 的匿名函数来确保在特定范围内使用 jquery 的确切版本,并且您的函数不接受任何参数。添加 $ 作为参数

标签: javascript function object


【解决方案1】:

它被称为自调用匿名函数。查看此线程以了解有关其工作原理和使用原因的更多详细信息,

Why do you need to invoke an anonymous function on the same line?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-18
    • 2014-03-28
    • 1970-01-01
    • 1970-01-01
    • 2018-04-08
    • 2019-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多