【发布时间】:2013-05-20 00:30:02
【问题描述】:
我在 jQUery UI 源代码https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.button.js 中看到了这个范围封装,未定义的值作为第二个参数。当我正在编写一个 jquery ui 插件时,我想知道在参数中设置 undefined 有什么好处?
(function( $, undefined ) {
//...
}( jQuery);
【问题讨论】:
-
好问题!我也一直在想这个。
-
它用于确保未定义确实意味着未定义,即如果在代码中的某处错误 undefined = abc( 被分配了一个值) 那么它将呈现所有那些 if(something === undefined)没用,因为那样您将与 abc 进行比较,而不是未定义。这样,undefined 是真正的 undefined,因为调用时 (function ($, undefined){...}(jQuery);' $ 被赋值为 jQuery 但 undefined 从未被赋值。
标签: javascript jquery jquery-ui