類裡面的共有屬性和方法一定要加this使用
const x =
1class
test
foo(
)foo_()
}const test =
newtest()
test.
foo_()
// 2
test.
foo(
)// 1 不用this繫結到類時,會直接尋找全域性的變數和方法
test.x =
3test.
foo_()
// 3
class的this指向
類的方法內部如果有this,預設(只是預設)指向類的例項,但是如果賦值給第三方直接使用則可能會報錯
class
test
foo()}
const test =
newtest()
// 使用new關機鍵將this指向test例項
test.
foo(
)// 1
const foo = test.foo
foo(
)// 因為賦值再呼叫,this指向undefined,找不到a,報錯(不是指向window)
解決方法:
const x =
1class
test
foo(
)foo_()
}const test =
newtest()
const obj =
obj.foo = test.foo
obj.foo_ = test.foo_
obj.
foo(
)// 2 this指向仍為例項
obj.
foo_()
// 3 this指向為呼叫的obj物件
test.x =
4obj.foo = test.foo
obj.
foo(
)// 4 再一次證明this指向例項
const x =
2class
test
foo=()
=>
foo_()
}const test =
newtest()
// 使用new關機鍵將this指向test例項
const obj =
obj.foo = test.foo
obj.foo_ = test.foo_
obj.
foo(
)// 2
obj.
foo_()
// 3
test.x =
4obj.foo = test.foo
obj.
foo(
)// 4
es6中類的理解
類的資料型別就是函式,類本身就指向建構函式 point point.prototype.constructor 類的所有方法都定義在類的prototype屬性上面。在類的例項上面呼叫方法,其實就是呼叫原型上的方法class point tostring tovalue 等同於 point.proto...
es6 定義靜態類 es6中靜態變數
最近剛看react,什麼是靜態方法不太懂,就我目前所理解的說一下,如有不對望不吝賜教 首先說一下react的單向資料流。呼叫了hello這個元件,跟普通的函式呼叫差不多,name jhon 是它的實參,在定義hello元件這裡 class hello extends react.component ...
es6 定義靜態類 ES6中類的靜態方法有哪些作用
以前看過的es6的東西,又忘了,再總結下 類相當於例項的原型,所有在類中定義的方法,都會被例項繼承。如果在乙個方法前,加上static關鍵字,就表示該方法不會被例項繼承,而是直接通過類來呼叫,這就稱為 靜態方法 class foo static classmethod return hello fo...