javascript中的this含義非常豐富,它可以是全局對象,當(dāng)前對象或者是任意對象,這都取決于函數(shù)的調(diào)用方式。函數(shù)有以下幾種調(diào)用方式:作為對象方法調(diào)用、作為函數(shù)調(diào)用、作為構(gòu)造函數(shù)調(diào)用、apply或call調(diào)用。
對象方法調(diào)用
作為對象方法調(diào)用的時候,this會被綁定到該對象。
var point = {
x : 0,
y : 0,
moveTo : function(x, y) {
this.x = this.x + x;
this.y = this.y + y;
}
};
point.moveTo(1, 1)//this 綁定到當(dāng)前對象,即 point 對象