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

function(){}()报错的原因,是在预编译阶段就报错了?还是执行()时才报错呢?请教下

function(){}()报错的原因,是在预编译阶段就报错了?还是执行()时才报错呢?请教下

LEATH 2018-12-16 16:45:13
对立即执行函数表达式IIFE,function(){}();报错的原因有疑惑。请教下,是在预编译阶段就报错了,还是执行()时才报错呢。js在"预编译"阶段, 会解释函数声明, 但却会忽略表式1、一种是预编译阶段就报错,因为预编译时会声明成一个缺少名字的function,并且抛出一个语法错误信息,因为function声明需要一个名字。2、执行();时才报错。 由于function() {//code}在"预编译"阶段已经被解释过, js会跳过function(){//code}, 试图去执行();, 故会报错
查看完整描述

1 回答

?
慕村9548890

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

语法错误是在编译时报错 ;

逻辑错误是在执行时报错 ;


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

添加回答

举报

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