【发布时间】:2017-04-21 14:43:03
【问题描述】:
我正在创建一个用于创建 javascript 对象的 javascript 库。
- 如何编写库的界面,以便他们的用户可以 创建有和没有新的对象? (我看到很多答案都建议构造函数使用 new 自动调用自身,如果它们不是首先用 new 调用的,但不是相反)。
- 我们可以在 Object.create 中使用 new 吗?例如: let dog = new Object.create(animal);
- 如何提供继承
用代码来说明,下面的函数Animal和Dog怎么写才能使下面的表达式有效:
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.
非常感谢。
【问题讨论】:
标签: javascript inheritance constructor factory