读书人

将function宣言在if语句中为什么火狐浏

发布时间: 2013-07-09 09:50:48 作者: rapoo

将function声明在if语句中为什么火狐浏览器和其他浏览器解析却不一样
将function声明在if语句中为什么火狐浏览器和其他浏览器解析却不一样呢?
代码如:


将function宣言在if语句中为什么火狐浏览器和其他浏览器解析却不一样将function宣言在if语句中为什么火狐浏览器和其他浏览器解析却不一样将function宣言在if语句中为什么火狐浏览器和其他浏览器解析却不一样将function宣言在if语句中为什么火狐浏览器和其他浏览器解析却不一样
[解决办法]
你好!这存在浏览器差异问题。

其他浏览器进行预编译处理会对所有函数进行预编译处理,自上而下。所以以上代码会弹出222

而火狐只针对顶层函数进行优先编译,语句中的函数按语句执行流程进行预编译!

暂时这么理解吧!看上去是作用域了!哈哈!同时本人也借助你的帖子反馈了火狐,希望得到官方的回复.在未接到官方回复之前暂时先这么理解吧!

读书人网 >JavaScript

热点推荐