小编eva*_*anb的帖子

JavaScript多级继承

我一直试图了解JavaScript继承.令人困惑的是,似乎有许多不同的方法 - 克罗克福德提出了相当多的方法,但不能完全理解他的散文(或者可能只是没有把它与我的特定情况联系起来).

这是我到目前为止的一个例子:

// base class
var Item = function( type, name ) {
    this.type = type;
    this.name = name; // unused
};

// actual class (one of many related alternatives)
var Book = function( title, author ) {
    this.name = title; // redundant (base class)
    this.author = author;
};
Book.prototype = new Item('book'); // duplication of "book"

// instances
var book = new Book('Hello World', 'A. Noob');
Run Code Online (Sandbox Code Playgroud)

这种方法给我留下了相当多的冗余,因为我不能将特定于实例的属性委托给基类(在原型分配时,属性值是未知的).因此每个子类必须重复该属性.有没有推荐的解决方法?

奖金问题:是否有合理的方法来避免"新"操作员,或者是否会被视为反对该语言的新手?

javascript inheritance

5
推荐指数
1
解决办法
962
查看次数

标签 统计

inheritance ×1

javascript ×1