JS有四种方法调用模式,每种模式方法内部的this指向是不同的
1.对象方法调用模式
var obj = {
'name':'zx',
'show':function ()
{
alert(this.name);
}
}
obj.show();
这上面这个模式中this是指向obj字面对象的,所以可以访问name
2.普通方法调用模式
var name = 'hello';
function show()
{
alert(this.name);
}
show();
上面的这个模式中的this是指向global对象或window对象的
3.构造方法调用模式
function show(name)
{
this.name = name;
alert(this.name);
}
var s = new show('dd');
上面的这个模式中的this是指向当前对象s的
4.apply调用模式
function show(name)
{
this.name = name;
alert(this.name);
}
show.apply(window, ['zx']);
上面的这个模式中的this是指向apply的第一个入参所传的对象
本文介绍了JavaScript中this关键字的四种不同调用模式:对象方法调用、普通方法调用、构造方法调用及apply调用模式,并详细解释了每种模式下this的具体指向。
323

被折叠的 条评论
为什么被折叠?



