为了账号安全,请及时绑定邮箱和手机立即绑定

$(function(){}) 与 (function(){}())的区别在哪里?

$(function(){}) 与 (function(){}())的区别在哪里?

交互式爱情 2019-03-22 22:19:58
jquery中的$(function(){})与自闭合函数有哪些区别呢?(function(){}())
查看完整描述

6 回答

?
侃侃尔雅

TA贡献1801条经验 获得超16个赞

第一个是 DOM 准备好后 jQuery 的回调函数。jQuery官方文档的解释如下:

jQuery offers several ways to attach a function that will run when the DOM is ready. All of the following syntaxes are equivalent:

$( handler )
$( document ).ready( handler )
$( "document" ).ready( handler )
$( "img" ).ready( handler )
$().ready( handler )

第二个是自执行函数,也就是定义后立刻执行,常见于 JS 模块化,主要的思路是形成闭包,可以参考下阮一峰老师的文章,里面有自执行函数的作用和介绍:Javascript模块化编程(一):模块的写法


查看完整回答
反对 回复 2019-04-08
?
湖上湖

TA贡献2003条经验 获得超2个赞

jquery那个是回调函数,等价于:


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

js那个匿名函数基本是用来立即执行的。


(function(whoAmI) {

  // 立即执行

})('原罪');

就是说有一些变量不想污染全局,或者想整一些私有变量啥的


查看完整回答
反对 回复 2019-04-08
?
PIPIONE

TA贡献1829条经验 获得超9个赞

一个是页面加载玩成后执行,一个是隐式匿名函数


查看完整回答
反对 回复 2019-04-08
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

意义不同 完全不是一回事


查看完整回答
反对 回复 2019-04-08
?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

  1. 普通回调函数

  2. 立即执行函数


查看完整回答
反对 回复 2019-04-08
?
慕莱坞森

TA贡献1810条经验 获得超4个赞

楼上解释都很到位了!


查看完整回答
反对 回复 2019-04-08
  • 6 回答
  • 0 关注
  • 1017 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信