es6 定義靜態類 ES6中類的靜態方法有哪些作用

2021-10-21 08:21:48 字數 668 閱讀 1361

以前看過的es6的東西,又忘了,再總結下:

類相當於例項的原型,所有在類中定義的方法,都會被例項繼承。如果在乙個方法前,加上static關鍵字,就表示該方法不會被例項繼承,而是直接通過類來呼叫,這就稱為「靜態方法」class foo {

static classmethod() {

return 'hello';

foo.classmethod() // 'hello'

var foo = new foo();

foo.classmethod()

// typeerror: foo.classmethod is not a function

上面**中,foo類的classmethod方法前有static關鍵字,表明該方法是乙個靜態方法,可以直接在foo類上呼叫(foo.classmethod()),而不是在foo類的例項上呼叫。如果在例項上呼叫靜態方法,會丟擲乙個錯誤,表示不存在該方法。

父類的靜態方法,可以被子類繼承。

class foo {

static classmethod() {

return 'hello';

class bar extends foo {

bar.classmethod(); // 'hello'

上面**中,父類foo有乙個靜態方法,子類bar可以呼叫這個方法。

es6 定義靜態類 es6中靜態變數

最近剛看react,什麼是靜態方法不太懂,就我目前所理解的說一下,如有不對望不吝賜教 首先說一下react的單向資料流。呼叫了hello這個元件,跟普通的函式呼叫差不多,name jhon 是它的實參,在定義hello元件這裡 class hello extends react.component ...

ES6中類的this問題

類裡面的共有屬性和方法一定要加this使用 const x 1class test foo foo const test newtest test.foo 2 test.foo 1 不用this繫結到類時,會直接尋找全域性的變數和方法 test.x 3test.foo 3class的this指向 類...

es6中類的理解

類的資料型別就是函式,類本身就指向建構函式 point point.prototype.constructor 類的所有方法都定義在類的prototype屬性上面。在類的例項上面呼叫方法,其實就是呼叫原型上的方法class point tostring tovalue 等同於 point.proto...