在这种情况下如何进行原型继承
How to do prototypal inheritance in this case?
如何使用此示例进行继承。
我正在尝试创建一个充当单例的对象文字。在此中,我想提取我的类。接下来,这些类应该在适用时相互继承。
这样:
var Singleton = {
car: function() {
this.engine= true;
},
ford: function() {
this.color = 'red';
}
};
我想让福特从酒吧继承,但我不能这样做:
ford: function() {
this.color = 'red';
this.prototype = new this.car();
}
有什么想法吗?
var Something = {
foo: function() {
this.greet = 'hello';
},
bar: function() {
this.color = 'blue';
}
};
Something.bar.prototype = new Something.foo();
alert((new Something.bar()).greet)
这是关于继承的入门
如果你试图让bar
继承foo
的属性,那么你可以做这样的事情(注意,这样你就不会有原型属性):
var Something = {
foo: function() {
this.greet = 'hello';
},
bar: function() {
Something.foo.call(this);
this.color = 'blue';
}
};
然后像这样使用它:
var bar = new Something.bar();
bar.color // blue
bar.greet // hello
你可以做这样的事情:
function Foo() {
this.greet = "hi!";
}
Bar.prototype = new Foo;
function Bar(color) {
Foo.apply(this.arguments);
this.color = color;
}
var myBar = new Bar("red");
以这种方式创建的Bar
将同时具有greet
属性和color
属性。此方法保留原型属性。
相关文章:
- 如何使用原型继承编写一个整洁灵活的复杂javascript应用程序
- $emit,$broadcast,原型继承
- 原型继承未按预期工作
- JavaScript中的原型继承.我可以称之为“超级”等价物吗?
- 不创建父对象的原型继承
- Javascript基本继承与Crockford原型继承
- JavaScript-构造函数参数和原型继承
- 使用Object.create作为原型的原型继承将[Object]作为实例的原型
- 原型继承返回值
- 如何进行JavaScript原型继承(原型链)
- Javascript-经理是一个人,但不是经理本身?功能/原型继承
- 模块化JS和原型继承
- 理解经典继承和原型继承之间的区别
- 理解Javascript原型继承
- AngularJS:多个工厂实例任何原型继承
- Javascript原型继承原型函数调用
- JavaScript中的原型继承是否演示了类型多态性
- 在JavaScript中使用带有原型继承的InstanceOf
- 原型继承和原型属性
- JavaScript-原型继承