javascript - オブジェクトはインスタンス化された後はコンストラクターとは何の関係もありませんか?プロトタイプ オブジェクトを変更したい場合のみ検索できますか?
阿神
阿神 2017-05-19 10:29:49
0
1
552

オブジェクトがインスタンス化された後、それに新しい属性を持たせたい場合は、プロトタイプを介して追加するしかありませんか?コンストラクターを変更できないのはなぜですか?
その理由は、オブジェクトがインスタンス化された後は、そのプロパティとメソッドの存在がコンストラクターとは何の関係もないからでしょうか?

阿神
阿神

闭关修行中......

全員に返信(1)
大家讲道理

プロトタイプはプロトタイプチェーンと呼ばれます。
1. オブジェクトがインスタンス化された後、Object.name を使用して直接追加できます。プロトタイプ チェーンを通じて追加されたものに関しては、追加されたパブリック プロパティであり、同じクラス インスタンスを通じて他のオブジェクトからアクセスできます。
2. インスタンス化されたオブジェクトはプロトタイプ チェーンにアクセスできません。プロトタイプ チェーンは Class でのみ使用でき、プロトタイプ チェーンの属性とメソッドは Class.prototype を通じて追加されます。コンストラクターはプロトタイプ チェーン メソッドにも属します。インスタンスを渡した後に取得したコンストラクターを変更することはできますが、Class のコンストラクターには影響せず、Class.prototype の変更に応じて変更されます。
プロトタイプチェーンで定義されたプロパティとメソッドを使用したいインスタンス化されたオブジェクトについては、Object.name を直接使用できます。
プロトタイプ チェーンについては、Baidu にたくさんありますので、読んでみてください。
私も初心者なので、欠点があれば指摘したいと思います。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート