this永远指向的是最后调用它的对象,如果在全局范围内使用this,则指代当前页面window;如果在函数中使用this,则this指代什么是根据当前函数是在什么对象上调用。
var a=10;
function aa(){
a=100;
console.log(a);//100
console.log(this.a);//10
console.log(this);//window
var a;
console.log(a);//100
}
aa();
全局作用域或者普通函数中this指向全局对象window。
var bb = {
"a" : 10,
aa:(function(){
a=100;
console.log(a);//100
console.log(this.a);//10,此时this指向bb
var a;
console.log(a);//100
}),
}
bb.aa();
方法调用中谁调用this指向谁