首頁  >  文章  >  web前端  >  JavaScript 中的底線前綴是否真正強制執行私有成員?

JavaScript 中的底線前綴是否真正強制執行私有成員?

Susan Sarandon
Susan Sarandon原創
2024-11-02 21:17:02869瀏覽

Does Underscore Prefix in JavaScript Truly Enforce Private Members?

底線前綴:JavaScript 中的約定或意義

在程式設計中,下劃線前綴通常用於表示私有或內部元素。這個約定只是 JavaScript 中的一個建議嗎?類似 Python 中私有方法的處理?

Python 的文檔指出,以下劃線前綴的變數旨在保留為類別的非公共成員。 JavaScript 是否遵循此範例?

在 JavaScript 中,下劃線前綴在語言語法中沒有固有意義。它只是開發人員用來指示屬性或方法不供外部使用的約定。

考慮以下程式碼片段:

<code class="javascript">function AltTabPopup() {
    this._init();
}

AltTabPopup.prototype = {
    _init : function() {
        ...
    }
}</code>

這裡,_init 被指定為內部方法由下劃線前綴組成。類似地,私有變數也可以用底線標記:

<code class="javascript">this._currentApp = 0;
this._currentWindow = -1;
this._thumbnailTimeoutId = 0;
this._motionTimeoutId = 0;</code>

雖然JavaScript 中的下劃線前綴純粹是一種約定,但它對於尋求在內部公共元素和私有元素之間建立區別的開發人員來說具有重要的用途。他們的班級。透過遵守此約定,很明顯某些方法和屬性應被視為類別的內部方法和屬性,從而阻止外部存取。

總之,JavaScript 中的下劃線前綴是一種與常見做法保持一致的約定使用它來表示私有成員。儘管語言沒有明確強制執行,但它傳達了意圖並鼓勵封裝,使其成為有用的約定。

以上是JavaScript 中的底線前綴是否真正強制執行私有成員?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn