Crockfordの定義では:
if (typeof Object.create !== 'function') {
Object.create = function (o) {
function F() {}
F.prototype = o;
return new F();
};
}
ECMA-262の導入によりObject.create()
、新しいオブジェクトの非表示のプロトタイププロパティを設定して、純粋なプロトタイプの継承のためa
に別のオブジェクトを指すようになりました。b
しかし、それは新しいオブジェクトに限定されており、Javascriptはまだ次のようなものを許可しません
a.__proto__ = b;
a
ECMA-262Javascript仕様の既存のオブジェクトの場合。それを新しいオブジェクトに制限するが、既存のオブジェクトには制限しない理由はありますか?