"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 + " 是一种流行的编程语言。");
  }
};

lang_name(obj.language);
lang_name(obj.language.bind(obj));
</script>

标签: js, JavaScript, JavaScript语言, JavaScript开发, JavaScript语法, JavaScript脚本, JavaScript教程, JavaScript入门, JavaScript入门教程, JavaScript进阶, JavaScript宝典, JavaScript学习, JavaScript指南, JavaScript大全