Skip to main content

if true / function a / a = 2

var a = 0;
if (true) {
a = 1;
function a() {return 3}
a = 2;
console.log(a); // 2
}
console.log(a); // 1

这题属于未定义行为(见 MDN),实在刁钻,答案并不唯一。但你可以回答「打印 2 和 1」。

运行浏览器不同结果

  • Chrome / Edge 运行结果:2、1
  • Safari 运行结果:2、2
  • Firefox 运行结果:2、1