javascript闭包注意点

阅读更多

function a() {

var aa = 1;

function b() {

aa = 2;

var aa = 3;

alert("b:" + aa);

}

b();

alert("a:" + aa);

}

a();

javascript闭包注意点_第1张图片

只要变量aa有一个用var声明,aa就是b的本地变量。

 

function a() {

var aa = 1;

function b() {

aa = 2;

//var aa = 3;

alert("b:" + aa);

}

b();

alert("a:" + aa);

}

a();


javascript闭包注意点_第2张图片

如果aa没有用var声明,那么aa就是外层函数a的本地变量,在b函数中aa就属于闭包变量。
 

  • javascript闭包注意点_第3张图片
  • 大小: 6.9 KB
  • javascript闭包注意点_第4张图片
  • 大小: 7.2 KB
  • 查看图片附件

你可能感兴趣的:(javascript闭包注意点)