内部环境可以通过作用域链访问外部环境,
if会将语句中的变量声明,添加到if的执行环境,for 也是.
用var声明会最近环境,直接用则是全局变量.
function add(num1,num2) { sum=num1+num2; return sum; } var result=add(10,5); console.log(result); console.log(sum);
15 15 如果var sum 则会报错,
var color="red"; function getcolor() { return color; } console.log(getcolor());
在window中找到我的color标识符.
var color="red"; function getcolor() { var color="yellow"; return color; } console.log(getcolor());
在局部环境中找到的标识符.从局部到全局.
function createperson(name) { var localperson=new Object(); localperson.name=name; return localperson; } var gobal=createperson("solin"); console.log(gobal); gobal=null;
goal是全局变量,最后是为了手工解除引用