JavaScript this 关键字
this 关键字是一个引用变量,用于指向当前对象。在这里,我们将通过不同的示例学习 this 关键字。
JavaScript this 关键字示例
让我们看一个简单的 this 关键字示例。
<script>
var address=
{
company:"Javatpoint",
city:"Noida",
state:"UP",
fullAddress:function()
{
return this.company+" "+this.city+" "+this.state;
}
};
var fetch=address.fullAddress();
document.writeln(fetch);
</script>
输出:
Javatpoint Noida UP
以下方法可以用来确定this关键字所指的对象。
全局上下文
在全局上下文中,变量在函数外部声明。在这里,this关键字指的是window对象。
<script>
var website="Javatpoint";
function web()
{
document.write(this.website);
}
web();
</script>
call()和apply()方法
call()和apply()方法允许我们编写一个可以在不同对象上使用的方法。
<script>
var emp_address = {
fullAddress: function() {
return this.company + " " + this.city+" "+this.state;
}
}
var address = {
company:"Javatpoint",
city:"Noida",
state:"UP",
}
document.writeln(emp_address.fullAddress.call(address));
document.writeln(emp_address.fullAddress.apply(address));</script>
bind() 方法
bind() 方法在 ECMAScript 5 中引入。它创建一个新的函数,其中的this关键字指向提供的值,并带有给定的一系列参数。
<script>
var lang="Java";
function lang_name(call)
{
call();
};
var obj={
lang:"JavaScript",
language:function()
{
document.writeln(this.lang+ " is a popular programming language.");
}
};
lang_name(obj.language);
lang_name(obj.language.bind(obj));
</script>