function f1(){ var a=b=1; }; f1(); console.log(typeof a); console.log(typeof b); VM551:6 number VM551:7 number
我用谷歌的控制台,怎么全是number呢
浏览器不一样的原因吧,或者是你 var a =1 , var b = 1,分别声明看看,因为这种 var a=b=1 就不太好,
。。。。。。。。。。
var a=b=1,声明了a ,但是b没声明,js自动隐式声明b,js帮手声明的都是全局的,所以出现b可以在函数体外面访问
我是这样想的,b=1就是申明了一个全局变量b, 而var a = b 就是申明局部变量a,a的值就是等于b的值为1.
JS的执行顺序是从右往左执行的。
可我在Chrome 的控制台上, a 是 undefined , b 是 number 啊,如图(我直接复制你的代码的):
你想它是 String ?