javascript没有块级作用域

var a=true;

function g(){
  a=false;
  return a;
}
console(a);
console(g());
console(a);

三个console打印结果,第一个为true,第二第三个均为false。
js与其他语言不一样的是,因为js没有所谓的块级作用域,所以函数的运行会改变变量a的值。

你可能感兴趣的:(javascript没有块级作用域)