javascript中this的指向

javascript中this的指向

1
2
3
4
5
function xx(){
console.log(this); //window
console.log(this === window); //true
}
xx();
1
2
3
4
5
6
7
8
9
10
11
12
var yy = {
a:'zjy',
b:function(){
console.log(this);//yy
console.log(this === yy);//true
function bb(){
console.log(this);//window
}
bb();//bb只是在yy的属性b中执行,并不是b的属性,属于window
}
};
yy.b();
1
2
3
4
5
6
7
var o = {
s:function(){
console.log(this);
}
}
var f = o.s;
f();//this指向window,js中函数是按引用传递的
1
2
3
4
5
6
function xx3(){
this.x = 333;
console.log(this); //xx3:{x: 333}
console.log(this.__proto__==xx3.prototype);//true
}
new xx3();