let name = '饥人谷'
let people = {
name: '若愚',
sayName: function(){ console.log(this.name)}
}
let sayAgain = people.sayName
function sayName(){ console.log(this.name)}
sayName()//undefined
people.sayName()//若愚
sayAgain()//undefined
这里纠正一下,虽然分析的没错,但是针对的是var,var在全局作用域声明的时候才会等价于window,let和const都不会,所以打印出来的window.name应该undefined,this的分析没问题
this 常见的面试题汇总上一节我们了解到了 call 和 apply,通过他俩 我们来看看函数执行的本质是什么 当我们执行一个函数,有以下几种调用方式等价 函数直接调用情况下 可以看到: 在严格模式...