首頁 >web前端 >前端問答 >es6中static修飾符是啥意思

es6中static修飾符是啥意思

WBOY
WBOY原創
2022-08-18 17:26:151835瀏覽

es6中static修飾符是修飾成員變數和成員方法的意思,static是靜態的意思,也即定義靜態方法;static修飾成員變數表示該成員變數在記憶體中只儲存一份,可以被共享存取和修改,類別透過static定義靜態方法。

es6中static修飾符是啥意思

本教學操作環境:windows10系統、ECMAScript 6.0版本、Dell G3電腦。

es6中static修飾符是啥意思

static是靜態意思,可以修飾成員變數和成員方法

static修飾成員變數表示該成員變數在記憶體中只儲存一份,可以被共享訪問,修改。

類別(class)透過 static 關鍵字定義靜態方法。不能在類別的實例上呼叫靜態方法,而應該透過類別本身呼叫。這些通常是實用程式方法,例如建立或複製物件的功能。

上述說法較為簡單,想要搞清楚需要弄清楚幾個概念:

在物件導向程式設計的過程中,通常把用類別建立物件的過程稱為實例化。類別就是實例的原型。類別是靜態的,不佔用進程內存,而實例擁有動態內存。

通常情況下,我們會new一個test(),在類別test()中定義的方法,都會被實例繼承。但在一個方法前面加上static的關鍵字,就表示該方法不會被實例繼承,而是直接透過類別來調用,這稱為靜態方法。

範例如下:

首先我們建立了父類別Father,在這個類別中建立了靜態方法testMethod()。當我們直接透過Father類別呼叫方法時,可以呼叫成功。但是我們透過類別建立一個實例Child,靜態方法就不會繼承在這個實例上,這個方法當然就不會呼叫成功。

class Father {
    static testMethod() {
        return 'hello';
    }
}
Father.testMethod() 
// output: 'hello'
var Child = new Father();
Child.testMethod()
// output: TypeError: Child.testMethod is not a function

【相關推薦:javascript影片教學web前端

以上是es6中static修飾符是啥意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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