首頁 > web前端 > js教程 > 何時以及為何需要使用「this」。 JavaScript 物件變數?

何時以及為何需要使用「this」。 JavaScript 物件變數?

Linda Hamilton
發布: 2024-12-31 08:38:17
原創
256 人瀏覽過

When and Why Do You Need to Use

使用「這個」。在 Javascript 物件變數中

在 Javascript 中,與 C 不同,變數必須明確地以「this」作為前綴。來引用它們所屬的物件。這是兩種語言之間物件導向程式設計的一個關鍵區別。

Javascript 中的「this」關鍵字表示當前上下文,即呼叫函數的物件。當您宣告一個沒有「this.」的變數時,它就成為該函數範圍內的局部變數。若要從函數內存取物件的屬性,您需要使用“this”。後跟屬性名稱。

考慮以下程式碼:

function foo() {
    bar = 0; // This creates a local variable
    this.getBar = function() { return bar; } // This creates a privileged method
}
登入後複製

在此程式碼中,「bar」是「foo」函數中的局部變量,而「getBar」是有權存取局部變數的特權方法。如果不使用“this.”,“getBar”將無法存取“bar”。

這種使用「this.」的方法。對於要從物件方法內存取的所有變數都是必需的。但是,Javascript 允許您在原型物件而不是實例物件上定義方法。原型上定義的方法由該物件的所有實例繼承。在這種情況下,您可以避免使用“this”。對於那些方法。以下是一個例子:

function Foo() {
    this.bar = 0;
}
Foo.prototype.getBar = function() { return this.bar; }
登入後複製

在這段程式碼中,「getBar」是在原型上定義的,因此「Foo」的實例繼承了這個方法,並且可以存取「bar」而無需添加“this”前綴。

簡而言之,使用「this」。對於從實例物件內部定義的函數/方法存取物件屬性至關重要。但是,可以透過在原型上定義方法來避免這種情況。

以上是何時以及為何需要使用「this」。 JavaScript 物件變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板