首页 新闻 赞助 找找看

js 函数声明

0
悬赏园豆:10 [已关闭问题] 关闭于 2014-11-11 20:04
1 var x = 1;
2 if(function f(){},x=f){
3 }
4 console.log(x);
为什么在执行if语句的时候,会报f is not defined的错误.
js
IORY的主页 IORY | 初学一级 | 园豆:14
提问于:2014-04-03 13:10
< >
分享
所有回答(2)
0

逗号操作符影响到了,所以在if中被执行到的只是x= f

andy1987 | 园豆:490 (菜鸟二级) | 2014-04-04 09:33

逗号运算符从左向右都会执行的

支持(0) 反对(0) IORY | 园豆:14 (初学一级) | 2014-04-04 11:20
1
1 var x = 1;
2 if(f = function (){}, x = f){}
3 console.log(x);

这样写就不报错了,具体原因我也说不清楚,我只是了解这两种声明方式是有一些差别的。

ThreeTree | 园豆:1490 (小虾三级) | 2014-04-09 13:04
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册