2011-09-09 10 views
2

の.__ proto__ =プロトタイプ私はNode.jsのためのExpressのフレームワークに探していますし、すべての継承はによって行われます:のJavaScript/Node.jsの:なぜプロトタイプ代わりに新しい

Collection.prototype.__proto__ = Array.prototype; 

はその等しくありませんTo:

Collection.prototype = new Array; 

もう1:

var app = HTTPSServer.prototype; 

function HTTPSServer(options, middleware){ 
    connect.HTTPSServer.call(this, options, []); 
    this.init(middleware); 
}; 

app.__proto__ = connect.HTTPSServer.prototype; 

は、これらのapprochesのいずれかのメリットがありますか?

ありがとうございます!すべてのコレクションは、アレイの同じインスタンスを共有します

https://github.com/visionmedia/express/blob/master/lib/router/collection.js

https://github.com/visionmedia/express/blob/master/lib/https.js

答えて

0
Collection.prototype = new Array; 

:から

例。

これが__proto__と一致するかどうかわかりませんか?

1

new Arrayは、コンストラクタを呼び出します。 __proto__に設定されていません。これが唯一の違いです。私は著者が 怠惰 たと推定

Object.create

+0

どのようにこれはjQueryを使って行うには何もありませんを使用したくないのですか? –

+0

私は '__proto__'の使用はもともとjQueryの人々が他の要素との明白な衝突を防ぐことを望んでいると考えました。誰もがそれは良いアイデアだったことに同意しましたか? – jcolebrand

+0

@JimSchubert私は約10秒遅れて修正しました:コメントを再送信しました。 – jcolebrand

関連する問題