$(function(){})与(function($){})(jQuery)

来源:互联网 发布:南望王师又一年 知乎 编辑:程序博客网 时间:2024/05/17 08:11

1.(function($){})(jQuery)
function($){},是一个匿名的函数,它的形参比较奇怪,是$,这里主要是为了不与其它的库冲突。

容易理解第一个括号内的内容就是定义了一个匿名函数,我们在调用函数的时候,都是函数名后边加上括号以及实参,但是由于操作符的优先级我们定义的匿名函数也需要用()括起来。

第一个括号表示定义了一个匿名函数,然后第二个函数表示为该函数传递的参数,整个结合起来意思就是,定义了一个匿名函数,然后又调用该函数,该函数的实参为jQuery。

相当于:

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

这种方法多用于存放开发的插件,执行其中的代码时,Dom对象并不一定加载完毕。
于此相反的是$(function(){}),这种方法在使用时页面的Dom对象已经加载完毕了。事实上该方法的全写是:
$(document).ready(function(){});

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

等价

jQuery(function(){})
用于存放操作DOM对象的代码,执行其中代码时DOM对象已存在。不可用于存放开发插件的代码,因为jQuery对象没有得到传递,外部通过jQuery.method也调用不了其中的方法(函数)。
(function($){})(jQuery)
用于存放开发插件的代码,执行其中代码时DOM不一定存在,所以直接自动执行DOM操作的代码 请小心使用。

0 0
原创粉丝点击