var fullname = 'John Doe';
var obj = {
fullname :"xxx",
prop :{
fullname :"ppp",
getFullname :function(){
return this.fullname;
}
}
}
console.log(obj.prop.getFullname()); // ppp
var test = obj.prop.getFullname;
console.log(test()) //'John Doe'
this就是誰在調(diào)用就指向誰
分析一下:
- obj.prop.getFullName() ;明顯是obj.prop在調(diào)用該函數(shù),那么this指向obj.prop,其實就是輸出 obj.prop.fullname 答案就是ppp
- test = obj.prop.getFullname;
就相當于
var test = function(){
return this.fullname;
}
test() === window.test(在當前環(huán)境是成立的) 所以輸出John Doe