以下のコードをfirefoxで使用して、プロトタイプの継承関係を2つのオブジェクト間で設定します。プロトタイプはオブジェクトから別のものに継承する
var a={};
var b={};
b.__proto__=a;
a.dosomething=function(){
alert ('ok');
};
b.dosomething();//ok
それが唯一の原因プロト Firefoxでのみ利用可能にFirefoxのために働きます。他のWebブラウザで
、場合、bは、いくつかのコンストラクタ関数を使用して作成され、私は継承関係を設定する
b.constructor.prototype=a;
を使用することができます。
上記の場合、a、bのコンストラクタは両方ともObjectです。 Objectのプロトタイプを変更できません。
protoを使用する以外は、継承関係を設定する方法はありますか?
コメント歓迎
あなたは '__proto__'を意味しましたか? – Oriol
はい、それは__proto__です – arachide
上記のコードでは、aのプロトタイプとしてbを設定していませんか? 以下のコードで、なぜ 'b.prototype = a'の代わりに' b.constructor.prototype = a'をやっていますか? また、あなたは正しいオブジェクトはjsの母のプロトタイプです、私は問題をよりよく理解するように頼みます。 –