首页 > 代码库 > 作用域链 Scope Chain
作用域链 Scope Chain
Object.prototype.x = 10; var w = 20;var y = 30; //console.log(x); // 10 (function foo() { var w = 40; var x = 100; with ({z: 50}) { console.log(w, x, y , z); // 40, 10, 30, 50 } console.log(this.x, this.w); // 10, 20 console.log(window.w); // 20 })();
Object.prototype.x = 10; var w = 20;var y = 30; //console.log(x); // 10 (function foo() { var w = 40; var x = 100; with ({z: 50}) { console.log(this.w, this.x, this.y , z); // 20, 10, 30, 50 } console.log(x, w); // 100, 40 console.log(window.w); // 20 })();
在搜索__parent__ 之前先搜说 __proto__
闭包函数
Object.prototype.x = 10; var w = 20;var y = 30; //console.log(x); // 10 (function foo() { var w = 40; var x = 100; (function(){ console.log(w, x, y); //40,100,30})(); })();
因为with会在运行期间产生临时的作用域,而闭包函数还是在foo的作用域内。
原文:http://www.nowamagic.net/librarys/veda/detail/1645
作用域链 Scope Chain
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。