全局环境中,this 默认指向到 window;
函数独立调用(不论这个函数在哪调用),this 默认指向到 window;
document.getElementById('div1').onclick = function () {
function a() {
console.log(this.id);
console.log('this2->', this); // window
}
a();
}
当函数被作为对象的方法(对象的一个属性)调用时,this 指向该对象;
var myObject = {
name: 'sven',
getName: function () {
console.log(this); // myObject
return this.name;
}
};
myObject.getName();
函数只有调用了之后才有 this 的概念,不然它只是代码而已,我们经常把函数传给一个变量,如果后面没加括号,就只是传了个函数,而不是执行结果;
浙公网安备 33010602011771号