function yo(){
console.log("你好我是"+this.name)
}
var whh = {
name:"whh"
};
var lsd = {
name = "lsd"
};
whh.yo = yo;
lsd.yo = yo;
whh.yo();
lsd.yo();
this的指示不取决于THIS所在的位置,取决于被调用的方式
- 情形一
function a (){
fname="花花"
lname="王
fullname : function(){
console.log;
return this.lname + this.fname
}
}
//this指向他父级对象
- 情形二
var get_full_name = a.fullname;
console.log(get_full_name);
//this指向window或者undefined
this指向的对象不取决于你this所在的位置,而取决于你的调用方式
作为一个方法被调用的时候(即**.**的形式)
console.log(a.fullname);;this指向父级对象;
直接调用的时候console.log(get_full_name);,指向全局变量window或者undefined。
- 情形3
function User(){
console.log(this);
}
User();//undefined
var whh = new User();
console.log(whh)
当function作为构造器被调用的时候,this等于生成的那个对象