Q
不能在構造函數
2
A
回答
8
您可以用Object.assign方法延長this
:
class Foo {
constructor (props) {
Object.assign(this, props);
}
}
const foo = new Foo({ a: 1 });
console.log(foo.a); // 1
1
看到你的蔓延運營商的使用,它看起來像您使用的是ECMAScript的一個第3階段的建議。
https://github.com/tc39/proposal-object-rest-spread
嘗試Object.assign方法:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign
的Object.assign()方法被用於所有可枚舉自己的屬性的值從一個或多個源對象複製到一個目標對象。它會返回目標對象。
Object.assign(目標,...源);
相關問題
- 1. Laravel 5.5,不能在構造函數
- 2. 在構造函數中調用不同類的構造函數?
- 3. 不能使用線程構造函數
- 4. Laravel 5.2:不能調用構造函數
- 5. 不能使C#構造函數編譯
- 6. 不能隱藏構造函數[incr Tcl]
- 7. 不能讓構造函數運行
- 8. 不能爲org.hibernate.persister.entity.SingleTableEntityPersister構造函數
- 9. 構造函數類不能應用
- 10. java構造函數錯誤(不能通過int到構造函數)
- 11. C++ 11:委託構造函數 - 不能選擇構造函數模板?
- 12. 構造函數內的構造函數
- 13. 是否有可能將構造函數放在另一個構造函數的構造函數中?
- 14. 構造函數在JavaScript中的構造?
- 15. 構造函數 「是不是一個構造函數」
- 16. 從不同類的構造函數調用構造函數
- 17. JavaScript構造函數和Scala構造函數有何不同?
- 18. 爲什麼構造函數不是構造函數?
- 19. 構造函數問題,找不到合適的構造函數
- 20. TypeError:fakeClass不是構造函數
- 21. THREE.FileLoader不是構造函數(...)
- 22. TypeError:d.ListingCreationDate.getUTCFullYear不是構造函數
- 23. 「x」不是構造函數
- 24. gadgets.MiniMessage不是構造函數
- 25. LocalStrategy不是構造函數
- 26. TypeError:L.Control.Draw不是構造函數
- 27. 構造函數不工作
- 28. Firebase不是構造函數
- 29. Vue不是構造函數
- 30. TypeError:undefined不是構造函數
我認爲這是試圖創建一個新的對象,並將其分配給'this',而不是將屬性合併到'this'中。 – Barmar
'this'是一個保留的javascript字,不能被覆蓋,是否嘗試過使用不同的var名稱? – Derek
'這是'不可分配的。你真的想要做什麼? – Amit