这个表达式在这个控制台中给了我 undefined
输出。
请帮助理解为什么打印 undefined
?
var a = 3, b = a = typeof b; // undefined
答案 0 :(得分:2)
这里真正发生的是:
var a = 3; // so a gets a value.
var b; // var b exists but is undefined.
a = typeof b; // a receives type of b, which is undefined at this time
b = a; // b gets the value from a
答案 1 :(得分:1)
赋值运算符根据其右操作数的值为其左操作数赋值。 即 a = b 将 b 的值赋给 a。
因此,在我们的例子中
b = a = typeof b;
a 得到 undefined 的值,然后是 b。
var a=3, b = a = typeof b;
undefined
a
"undefined"
b
"undefined"