立即执行函数 和 回调函数 分别怎么理解?

Alex_0725 2014-12-30 11:11:21
立即执行函数 和 回调函数 分别怎么理解 ? 有什么共同点 或者不同点。如何区分?
...全文
188 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
functionsub 2014-12-30
  • 打赏
  • 举报
回复
不同点:一个立即就执行了,一个延迟执行 回调一般用在异步操作后要执行什么样的操作,也可以用来在完成一系列同步操作后再执行也一样,只是这时候没必要当做回调传进去啦。 像jquery的$(function(){}),这里面的$()就是立即执行,function(){}就是回调 在页面加载完成之前,会把每次$(function(){})里的function(){}放到一个回调数组里,在页面dom节点加载完成后按顺序执行, 当dom节点加载完成后,再$(function(){})就会立刻执行function(){}这个函数。 一般立即执行函数都会写成匿名形式,样子差不多是这样:
(function(){
    console.log('我是匿名函数');
})();//注意这里后面的(),这是立即执行函数的关键
functionsub 2014-12-30
  • 打赏
  • 举报
回复
共同点:都是函数
未知数 2014-12-30
  • 打赏
  • 举报
回复
语法上没区别,函数什么时候执行取决于代码,如果一个动作是异步执行,且需要定制该动作完成后的动作,就需要回调函数。你搞清楚回调函数的作用就什么都明白了
天际的海浪 2014-12-30
  • 打赏
  • 举报
回复
简单的说,在函数定义的后面直接写个括号就是立即执行的函数。 如: var a = function (){return "123";}(); 这里a的值不是函数本身,而是函数的返回值123 没有括号就不是立即执行 如: var a = function (){return "123";}; 这里a的值是函数本身,可以用a()来执行,也可以把a作为参数传给别的函数中,这就是回调函数。

87,915

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧