プロトタイプをカバーします
//囚人の例// 1。プロトタイプオブジェクトvar proto = {文:4、//懲役年度保護観察年:2 //保護観察年}; // 2。プロトタイプオブジェクトのコンストラクターを定義しますvar prisoner = function(name、id){this.name = name; this.id = id; }; // 3。コンストラクターをプロトタイプの囚人に関連付けます。プロトタイプ= proto; // 4。オブジェクトをインスタンス化 - オブジェクトをインスタンス化するvar makeprisoner = function(name、id){//ファクトリー関数を使用してオブジェクトプリンシパルvar prisoner = object.create(proto); prisoner.name = name; prisoner.id = id;囚人を帰国; }; var firstprisoner = makeprisoner( 'joe'、 '12a'); //firstprisoner.Sentence FirstPrisonerオブジェクトで文属性を見つけることができない//オブジェクトのプロトタイプを見つけて、これらの出力4 Console.log(FirstPrisoner.Sentence)の両方を見つけます。 console.log(firstprisoner .__ proto __。文); //オブジェクトの文属性を10 firstprisoner.sentence = 10に設定します。 //出力10 //オブジェクトのプロパティ値が10 console.log(firstprisoner.sentence)に設定されていることを確認します。 //しかし、オブジェクトのプロトタイプは変更されておらず、値はまだ4 console.log(firstprisoner .__ proto __。文)です。 //取得した属性をプロトタイプの値に戻すために、Object firstPrisoner.Sentenceを削除するオブジェクトから属性を削除します。 //次に、JavaScriptエンジンはオブジェクトの属性を見つけることができません//プロトタイプチェーンを見つけてプロトタイプオブジェクトの属性を見つける必要があります//これらconsole.log(firstprisoner .__ proto __。文);Ubuntu端子ノード出力
xxh@xxh-e440:〜/workspace $ node t6 4 4 10 4 4 4
では、プロトタイプオブジェクトのプロパティ値が変更された場合はどうなりますか?私はあなたが考えていることを知っています。
JavaScriptオーバーレイプロトタイプと変化するプロトタイプに関する上記の簡単な議論は、私があなたと共有したすべてのコンテンツです。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。