1. 程式人生 > >Java Script this指向的所有情況

Java Script this指向的所有情況

創建 hang script 指向 new func name () 所有

// 1.直接調用,指向全局
console.log(this);
// 2.在普通函數裏調用,指向全局
function fn(){
console.log(this);
}
fn();
3.構造函數普通調用,指向全局(構造函數也是普通函數,可以正常執行)
function Student(){
this.name="zhangsan";
console.log(this);
}
Student();
// 4.構造函數通過new調用創建一個實例對象,指向這個實例對象
var x=0;
function Student(name,x){
this.name=name;
this.x=x;
console.log(this.x);
}
var zhangsan=new Student("zhangsan",1);
var lisi=new Student("lisi",2);
// 5.對象(json創建)裏面的方法調用,指向這個對象
var object1={
name:"zhangsan",
show:function(){
console.log(this);
}
}

object1.show();
// 6.對象(通過Object創建)裏面的方法調用,指向這個對象
var object2 =new Object();

object2.name="zhangsan";
object2.show=function(){
console.log(this);
}

object2.show();
// 7.對象(通過構造函數創建)裏面的方法調用,指向這個對象
function Student(){
this.name="zhangsan"
this.show=function(){
console.log(this);
}
}
var object3=new Student();

object3.show();

Java Script this指向的所有情況