我正在創建一個JavaScript庫,創建JavaScript對象。Javascript創建對象與新的和沒有新的+繼承
- 我該如何編寫庫的接口,以便他們的用戶可以創建這樣的對象WITH和WITHOUT? (我看到很多答案提出了構造函數,如果它們不是以新的方式被調用,而是以其他方式調用,則自動調用新的構造函數)。
- 我們可以在Object.create中使用new嗎?例如: let dog = new Object.create(animal);
- 如何提供繼承
要使用的代碼說明,你如何寫功能動物和狗的下方,下面的表達式是有效的:
let animal = new Animal(); // valid
let animal = Animal(); // valid also, we should return the same object
let dog = new Dog(); // valid, dog inherits/shares functions and properties from Animal.
let dog = Dog(); // valid also, same case as in previous call.
太謝謝你了。
如果構造函數返回一個對象,'new'不會有任何效果。也許看看那個。 [**實施例**](https://jsfiddle.net/z3vqx9bx/1/)。 –
[**本書**](http://shop.oreilly.com/product/9780596517748.do)的第3章可能會有所幫助。 –
那麼我可以直接返回Object.Create嗎?它會工作(包括繼承)有沒有新的? – Dconversor