我目前正在實施static land規範(幻想土地的替代方案)。我不僅要使用普通對象作爲類型,還要使用靜態方法使用ES2015類。我已經將這些靜態方法實現爲咖喱形式的箭頭函數,而不是常規函數。但是,這是不可能的ES2015類:具有靜態箭頭功能的類
class List extends Array {
static map = f => xs => xs.map(x => f(x))
static of = x => [x]
}
我map
並不需要自己this
,因爲它僅僅是對List
構造一個咖喱功能。爲了使其工作,我必須寫static map(f) { return xs => xs.map(x => f(x)) }
,這是非常煩人的。
- 爲什麼我不能在ES2015類中使用箭頭函數和賦值表達式?
- 無論如何,有沒有簡明的方法來實現我的目標?
如果一切都是靜態的,爲什麼'擴展數組'? –
https://stackoverflow.com/questions/32545495/es6-class-instance-properties可能的重複? – Bergi
@ T.J。這個想法是使現有的圖書館靜態土地兼容。所以會有非靜態屬性的類,它們必須被擴展。 – ftor