我希望这会起作用
var Human = function() {
this.name = "baby";
this.age = 0;
}
var Man = function() {
this.sex = male;
}
Man.prototype = Human;
但是
var Human = {
name:"baby",
age:0
};
var Man = {
sex:"male"
};
如何在javascript中使用对象文字创建对象时从另一个对象继承一个对象?
答案 0 :(得分:0)
对象文字只是对象,除非用new
关键字包装它们,否则不能创建它们的许多实例。
这是Crockford创建许多Object literals实例的版本:
function object(o) {
function F() {}
F.prototype = o;
return new F();
}
var Human = {
name:"baby",
age:0
};
Human = object(Human);
var Man = {
sex:"male"
};
Man = object(Man);
既然你的两个对象文字都有一个实例,你可以像第一个例子那样进行继承。