【发布时间】:2012-07-02 13:42:54
【问题描述】:
假设我有两个构造函数:
var Person = function(xx,xx,xxx,xxxxxxx) {
//Person initialization
}
var Man = function(xx,xx,xxx,xxx) {
//Man initialization
}
我希望 Man 从 Person 扩展。
以下是我的想法:
给定一个已创建的 Man 对象:
var m=new Man("xx",....);
1) 当m的属性被访问时,会在Man.prototype中搜索。
2) 如果找不到,应该在Man.prototype.__prop__找到。
所以我要做的就是将Man.prototype.__prop__ 链接到Person.prototype。
我知道这是常见的方式:
function inherit(superClass) {
function F() {}
F.prototype = superClass.prototype;
return new F;
}
Man.prototype=inherit(Person);
但是当我尝试这个时:
Man.prototype.prototype=Person.prototype.
为什么它不起作用?
【问题讨论】:
标签: javascript prototype