在js里,每个函数都有一个执行的上下文,我们可以通过this来访问. 如: 全局函数 function test(){ var local = this; } 我们发现local等于window(dom根对象),也就是说全局函数实际上是window的一个属性. 同理全局变量也是如此. 比如 var name = 'phil'; 我们可以通过window['name']或者window.name 来访问. 而当函数是某一个对象的属性的时候,该函数的上下文就是该对象. var student = {…
在上篇文章中,我们讲了词法作用域.作用域链以及闭包,接下来我们分析一下这段代码: var bar = { myName:"time.geekbang.com", printName: function () { console.log(myName) } } function foo() { let myName = "极客时间" return bar.printName } let myName = "极客邦" let _printName =…