2016-07-27 17 views
0

の違いは私はObject.createが 2番目のパラメータである第一のパラメータとしてprotoptypeオブジェクトを期待し、プロパティdecriptors、Object.create方法を用いて一つのオブジェクトを作成するものです。obj.prototypeとObject.getPrototypeOf(OBJ)

var obj = Object.create({a:2},{b:{value:3}}) 

ので、{a:2}はOBJのプロトタイプです。しかし、私はobj.prototype戻りundefinedなどの試作品を探していますがいた場合{a:2}

を返すObject.getPrototypeOf(obj)を使用して、私のチェックは、あなたはここでいただきました!間違った教えてもらえますか? Object.createの最初のパラメータは何ですか? prototypeプロパティ:

おかげ

+0

構文: 'Object.create(proto [、propertiesObject])' https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create –

+0

プレーンオブジェクトにはプロトタイプがありません。あなた自身を 'functionReference.prototype'と混同しないでください。 –

+0

' Object.getPrototypeOf(obj)== obj .__ proto__'しかし、 '__proto__'を使うことはお勧めしません。 –

答えて

1

あなたは、JavaScript言語についての一つの奇妙なを見つけました。 JavaScriptでは、オブジェクトはプロトタイプチェーンを通じて親からプロパティを継承します。

しかし、JavaScriptはオブジェクトのprototypeプロパティがそのオブジェクトのプロトタイプでないように機能します。これは、newを使用して作成されたそれ以降のオブジェクトのプロトタイプとして使用される値です。したがってCar.prototypenew Car()で新しいインスタンスを作成するプロトタイプになる値です。

実際にプロトタイプ継承の意味でのオブジェクトのプロトタイプは、Object.getPrototypeOf()で得ることができます。たとえば、次のようになります。Understanding the prototype property in JavaScript

関連する問題