我有一個模塊車輛,其中包含一般車輛信息。我有另一個模塊Car,它爲Vehicle對象添加了更多的功能。如何使用Object.create繼承node.js中的模塊
// Pseudo code only. The final functions do not have to resemble this
var vehicle = require('vehicle')
vehicle.terrain = 'Land'
var car = vehicle.createCar()
// car and anotherCar will have unique Car-related values,
// but will use the same Vehicle info
var anotherCar = vehicle.createCar()
我在使用Object.create的Car模塊,但不知道Object.create調用應該去哪裏。
- 我應該在Car模塊中有一個構造函數,它需要一個Vehicle對象的實例並以Vehicle實例爲原型執行Object.create?
- 還是應該Object.create發生在Vehicle對象的函數中,比如createCar?我的問題是,汽車應該關心它是從車輛派生出來的,汽車不應該知道汽車需要這樣做。
- 或即使Object.create是正確的方法。
請大家非常感謝任何示例和最佳實踐。
更新:
我改變了例子,以更好地反映我試圖解決繼承問題。
感謝您的樣品。我結束了與util.inherits,但喜歡建設者的想法。 – baalexander 2011-05-28 04:16:31