JavaScript中未命名的函数不起作用

时间:2014-07-29 19:44:39

标签: javascript jquery

我测试了一些东西,这真的很奇怪......

当我使用时:

jQuery(document).ready(function ($){
     console.log($('.box').length);
});

返回值为4;

如果我使用它:

 (function ($){
     console.log($('.box').length);
})(jQuery);

返回值为0;

(在同一份文件中)

对此有何解释?

(我试图在jsfiddle中重现,但两者都返回相同的值。)

1 个答案:

答案 0 :(得分:1)

第二个示例将导致在解析整个语句时运行函数中的代码。 jQuery版本一直等到DOM被完全解析和填充。换句话说,这两段代码完全不同。