js this

function whoAmI()
{
alert("I'm "+this.name+" of "+typeof(this));
}
whoAmI();
var bill={name:"BillGates"};
bill.whoAmI=whoAmI;
bill.whoAmI();
var steve={name:"Steve Jobs"};
steve.whoAmI=whoAmI;
steve.whoAmI();
whoAmI();
whoAmI.call(bill);
whoAmI.call(steve);
bill.whoAmI.call(steve);
whoAmI.whoAmI=whoAmI;
whoAmI.name="whoAmI";
whoAmI.whoAmI();

({name:"nobody",whoAmI:whoAmI}).whoAmI();

在JavaScript函数中,你只能把this看成当前要服务的“这个”对象。this是一个特殊的内置参数,根据this参数,您可以访问到“这个” 对象的属性和方法,但却不能给this参数赋值。在一般对象语言中,方法体代码中的this可以省略的,成员默认都首先是“自己”的。但 JavaScript却不同,由于不存在“自我”,当访问“这个”对象时,this不可省略!

你可能感兴趣的:(this)