/* | |
this:是唯一的一个引用关键字。始终指向程序当前正在使用的对象,this仅用于函数内。 | |
全局函数:this,始终指向window对象 | |
对象的方法:this,始终指向调用方法的对象 | |
构造函数中的this:指刚创建的新对象 | |
*/ | |
/*全局方法中的this指向window*/ | |
/*var a=100; | |
function fun(){ | |
console.log(this.a);//window.a 100 | |
} | |
fun();*/ | |
/*var n=100; | |
function fun1(n){ | |
n=10; | |
console.log(this.n);//this.n=window.n //100 | |
} | |
fun1(n);*/ | |
/* var n=100; | |
function fun1(n){ | |
n++; | |
console.log(this.n);//this.n=window.n //100 | |
} | |
fun1(n); | |
*/ | |
/* var n=100; | |
function fun1(n){ | |
this.n++; //this.n=window.n | |
console.log(this.n);//this.n=window.n //101 | |
} | |
fun1(n);*/ | |
/*对象的方法中的this指向当前调用方法的对象*/ | |
/*var name="liming"; | |
var hmm={name:"Han Meimei", | |
intr:function(){console.log(this)} //this=hmm这个对象object | |
}; | |
hmm.intr(); | |
*/ | |
/*var name="liming"; | |
var hmm={ | |
name:"Han Meimei", | |
intr:function(){ | |
console.log(this.name); | |
},//this.name=hmm.name | |
}; | |
hmm.intr();*/ | |
/*var a=10; | |
var foo={ | |
a:20, | |
bar:function(){ | |
var a=30; | |
return this.a; //this.a=foo.a | |
} | |
} | |
console.log(foo.bar());//20*/ | |
/*构造函数中的this指向 new正在创建的对象*/ | |
/*function Student(name){ | |
this.name=name; | |
console.log(this); //this指向 new正在创建的对象 Student | |
} | |
var lilei=new Student("Li Lei"); | |
var eric=new Student("Eric");*/ | |
/*var name="liming"; | |
function Student(name){ | |
this.name=name; | |
console.log(this.name); //this指向 new正在创建的对象 Student | |
} | |
var lilei=new Student("Li Lei"); | |
var eric=new Student("Eric"); | |
*/ | |
/* | |
var a=10; | |
var foo={ | |
a:20, | |
bar:function(){ | |
a=30; | |
return this.a; | |
} | |
} | |
console.log(foo.bar()); //this-->foo this.a-->foo.a //20 | |
console.log((foo.bar=foo.bar)()); //this-->window 10 //foo.bar=foo.bar | |
//赋值语句的值,等号右侧表达式的值 | |
//foo.bar | |
//function(){ | |
//var a=30; //全局 | |
//return this.a; | |
//} | |
*/ var a=100; a++ console.log(a); |
JS之This篇-菜鸟的福利
最新推荐文章于 2024-07-16 22:25:37 发布