这是什么语法? ; (函数($,undefined)

时间:2013-04-19 12:48:42

标签: javascript jquery

; (function ($, undefined)
{

    // all the variables and functions of the js document

})(jQuery);

我现在已经在jquery / javascript文件中看到了两次缩放脚本。我不明白这究竟是什么。我似乎无法谷歌它,我不记得在最近学习jquery和js时在tizag或w3schools上遇到过这个。

此代码之前或之后没有任何内容(除了一些注释)。所以我完全迷失了(function())(jQuery);是什么或做了什么。

2 个答案:

答案 0 :(得分:8)

(function ($, undefined)
{

    // all the variables and functions of the js document

})(jQuery);

调用一段代码确保内部

  • $可用于引用jQuery
  • undefinedundefined

并且任何minifier都可以将undefined更改为更短的标签。

初始;确保您可以将此文件与另一个文件连接起来:如果没有这个,如果之前的文件类似

,则执行连接文件时会出错
(function (){

})()

答案 1 :(得分:5)

这是确保$确实是jQuery对象并确保任何局部变量和方法都是私有范围的方法,即不污染全局命名空间。

这是一个自调用的匿名函数,传递的参数是jQuery,这意味着$将是jQuery对象。

在函数内声明意味着内部变量和方法在其外部不可见。