JavaScript只有函数作用域;每个函数都有个作用域链直达window对象。
变量的查找由内而外层层查找,找到即止。
同时不仅可以查找使用,甚至可以改变外部变量。
var color = "blue"; function changeColor() { var anotherColor = "red"; function swapColors() { var tempColor = anotherColor; anotherColor = color; color = tempColor; } swapColors(); } changeColor(); console.log(color); // "red" 外部变量不仅可以被访问到也可以被修改
JavaScript高级程序设计之作用域链,布布扣,bubuko.com
原文:http://www.cnblogs.com/xiankui/p/3754684.html