ホームページ >ウェブフロントエンド >jsチュートリアル >Javascript_javascriptスキルでオブジェクトのプロトタイプオブジェクトを取得する方法のまとめ

Javascript_javascriptスキルでオブジェクトのプロトタイプオブジェクトを取得する方法のまとめ

WBOY
WBOYオリジナル
2016-05-16 16:13:131803ブラウズ

JavaScript では、オブジェクトはあるがそのコンストラクターがわからない場合、そのプロトタイプ オブジェクトをどのように取得すればよいでしょうか?

Chrome または FireFox ブラウザでは、オブジェクトの __proto__ 属性を直接使用して、そのプロトタイプ オブジェクトを取得できます。

コードをコピーします コードは次のとおりです:


関数 F(){};
var foo = 新しい F();
alert(foo.__proto__ == F.prototype);

ただし、__proto__ 属性は IE11 まで IE ではサポートされていませんでした。

では、__proto__ 属性をサポートしていないブラウザでは、オブジェクトのプロトタイプ オブジェクトを取得するにはどうすればよいでしょうか?コンストラクターを通じて間接的に取得できます。

コードをコピーします コードは次のとおりです:


関数 F(){};
var foo = 新しい F();
alert(foo.constructor.prototype == F.prototype);

コンストラクター プロパティはオブジェクト自体のプロパティではなく、プロトタイプ チェーンに沿ってプロトタイプ オブジェクトから取得されます。このプロパティは、このプロトタイプ オブジェクトに対応するコンストラクターを指します。コンストラクターのprototype属性はプロトタイプオブジェクトを指しているため、それを間接的に取得できます。

上記は、JavaScript でのプロトタイプ オブジェクトの取得に関するこの記事の全内容です。気に入っていただければ幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。