Rumah >hujung hadapan web >tutorial js >Peranan ini dalam js

Peranan ini dalam js

下次还敢
下次还敢asal
2024-05-06 13:45:24729semak imbas

Dalam JavaScript, ini ialah kata kunci khas yang menunjuk ke objek konteks kod yang sedang dilaksanakan: Konteks fungsi: ini menghala ke tetingkap objek global. Konteks kaedah: ini menunjuk kepada objek yang kaedah dipanggil. Konteks pembina: ini menunjuk kepada objek baharu yang sedang dibuat. Konteks pendengar acara: ini menunjuk kepada elemen yang mencetuskan acara. Konteks fungsi anak panah: ini mewarisi ini daripada skop induk.

Peranan ini dalam js

Peranan ini dalam JavaScriptthis 在 JavaScript 中的作用

在 JavaScript 中,this 是一个特殊关键字,指向当前正在执行代码的上下文对象。它的值根据上下文而有所不同,因为它可以引用函数、方法或对象。

函数上下文

在函数上下文中,this 始终指向全局对象,即 window 对象。因此,在函数中访问 this 时,可以访问全局变量和函数。

<code class="js">function sayHello() {
  console.log(this); // 输出: Window {...}
}</code>

方法上下文

在方法上下文中,this 始终指向调用该方法的对象。这允许方法访问对象的属性和方法。

<code class="js">const person = {
  name: "John",
  sayName: function () {
    console.log(this.name); // 输出: John
  },
};</code>

构造函数上下文

构造函数是用来创建和初始化对象的函数。在构造函数上下文中,this 指向正在创建的新对象。

<code class="js">function Person(name) {
  this.name = name;
}

const person1 = new Person("John");
console.log(person1.name); // 输出: John</code>

其他上下文

除了这些主要上下文外,this 还可以用作:

  • 事件监听器上下文:在事件监听器中,this 指向触发事件的元素。
  • 箭头函数上下文:箭头函数中的 this 继承其父作用域中的 this

注意事项

  • 严格模式下,在函数上下文中,this 不指向全局对象。如果要访问全局对象,需要使用 window 对象。
  • 在 ES6 引入了 bind()call()apply() 方法,用于显式设置或更改 this
  • Dalam JavaScript, ini ialah kata kunci khas yang menunjuk kepada objek konteks kod yang sedang dilaksanakan . Nilainya berbeza-beza bergantung pada konteks, kerana ia boleh merujuk kepada fungsi, kaedah atau objek.
🎜🎜Konteks fungsi🎜🎜Dalam konteks fungsi, ini sentiasa menghala ke objek global, iaitu objek window. Oleh itu, apabila mengakses ini dalam fungsi, pembolehubah dan fungsi global boleh diakses. 🎜rrreee🎜🎜Konteks kaedah🎜🎜Dalam konteks kaedah, ini sentiasa menunjuk kepada objek yang kaedah dipanggil. Ini membenarkan kaedah untuk mengakses sifat dan kaedah objek. 🎜rrreee🎜🎜Konteks Pembina🎜🎜Pembina ialah fungsi yang digunakan untuk mencipta dan memulakan objek. Dalam konteks pembina, ini menunjuk kepada objek baharu yang sedang dibuat. 🎜rrreee🎜🎜Konteks lain🎜🎜Selain konteks utama ini, ini juga boleh digunakan sebagai: 🎜
  • 🎜Konteks pendengar acara:Dalam peristiwa Dalam pendengar, ini menghala ke elemen yang mencetuskan acara. 🎜
  • 🎜Konteks fungsi anak panah: ini dalam fungsi anak panah mewarisi ini dalam skop induknya. 🎜🎜🎜🎜Nota🎜
    • Dalam mod ketat, dalam konteks fungsi, ini tidak menghala ke objek global. Jika anda ingin mengakses objek global, anda perlu menggunakan objek window. 🎜
    • Kaedah bind(), call() dan apply() telah diperkenalkan dalam ES6 untuk menetapkan atau menukar secara eksplisitini. 🎜🎜

Atas ialah kandungan terperinci Peranan ini dalam js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn