如何在 javascript 中让多个对象扩展 1 个对象
How to have multiple objects extend 1 object in javascript?
在javascript中,我有一个对象(如抽象类)定义为
var abstractclass = function() {
};
现在我想让其他一些类扩展abstractclass
。这就是我的做法,但我不认为这是最好的方法。我只是在类中创建父级的实例,然后我只使用父级。
var abstractclassA = function() {
var parent = new abstractclass();
};
var abstractclassB = function() {
var parent = new abstractclass();
};
var abstractclassC = function() {
var parent = new abstractclass();
};
var instance1 = new abstractclassA();
var instance2 = new abstractclassB();
var instance3 = new abstractclassC();
有没有更好的方法?
谢谢
如果您可以使用像 underscorejs 这样的库,它们有一个扩展函数,我认为它会做你想要的。如果没有,那么你可以看看它的注释源,看看他们是如何实现它的。最后,骨干的对象做一些与你所寻求的非常相似的事情。因此,您还可以查看其注释源
通常我这样做:
var abstractClass = function(){
};
var classB = function(){
};
classB.prototype = new abstractClass();
这样,类 B 的实例也将作为 abstractClass 的实例
相关文章:
- 在这个使用hasOwnProperty的对象扩展程序中有一个错误,I'我不确定那个bug是什么,也不确定这个扩展
- FabricJS CurvedText对象(扩展)在更新间距和文本属性时未显示
- 如何为特定的javascript对象扩展数组或对象原型
- 具有函数继承的对象扩展数组
- 将 jQuery 对象扩展到我自己的对象
- HTMLCollection 对象扩展
- Javascript 对象扩展
- jQuery用一个对象扩展$.fn
- 有没有一种方法可以在javascript中隔离本机对象扩展
- Backbone或javascript对象扩展错误
- 从另一个对象扩展而不使用object.JavaScript中的assign (ES6特性)
- 对象扩展vs.对象赋值
- 是否可以将一个对象扩展为“;一个函数
- 如何在jquery中用子对象$.扩展对象
- 为什么我有一个共享缓存时,我jQuery.使用相同的缓存对象扩展两个对象
- 使用美元.使用用户定义的对象扩展
- es7对象扩展表示法如何创建浅拷贝来替换原始对象
- 如何使用新对象扩展 $.fn
- 如何在 javascript 中让多个对象扩展 1 个对象
- IE8中对象扩展后的奇怪setAttribute行为