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

js匿名函数的一个问题

js匿名函数的一个问题

MM们 2018-10-16 10:09:42
第一个问题:        <script>             function(){                 alert("ssss");             }        </script>为什么会提示:Uncaught SyntaxError: Unexpected token (第二个问题:        <script>             (function(){                 alert("ssss");             })        </script>这为什么不提示错误,但没结果?第三个问题:<script>             (function(){                 alert("ssss");             })()        </script>这为什么对?
查看完整描述

1 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

第一个是函数定义语句,需要有函数名称

function fName() {}

噫,发现第二个是执行了的,第三个不是……你改了题目吗?那我改答案……
又改……那我再改……

第二三个是函数表达式(也有称为匿名函数),不需要有函数名称

第二个没效果是因为定义了没执行,所以没有明显的效果。

第三个一般称为立即执行的函数表达式,简称 IIFE,因为执行了,所以有效果。注意有一对小括号里是函数表达式,返回一个函数,对函数进行 () 运算就是执行函数,所以这里不光是定义,还执行了。


查看完整回答
反对 回复 2018-11-01
  • 1 回答
  • 0 关注
  • 444 浏览
慕课专栏
更多

添加回答

举报

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