Open misty0304 opened 4 years ago
(function(){ var a = b = 3; })(); console.log("a defined? " + (typeof a !== 'undefined')); console.log("b defined? " + (typeof b !== 'undefined'));
结果:a defined? false / b defined? true
首先,拆解var a = b = 3;
b = 3; var a = b;
因此typeof a 是undefined, typeof b是number
以上是在非严格模式下,如果在严格模式(use strict)下,声明var a = b = 3;将产生一个运行时错误的ReferenceError: b is not defined