functiondd(){vara=4;if(a+=6&&a++){console.log(a);}}按照之前的理解因为不满足判断条件应该是不执行if里面的东西返回undefined;可结果是输出8求解
2 回答
POPMUISE
TA贡献1765条经验 获得超5个赞
结果等效于vara=4;if(1){eval(a+=6&&a++);//先计算6&&a++的结果为a,也就是4,然后再计算a+=4console.log(a);}上面的6也可以是10000,只要为真就行,至于为什么,我想应该是表达式的执行顺序导致了这个结果。
添加回答
举报
0/150
提交
取消