Prototypeの定理
4404 ワード
1.Prototypeの概要
ユーザ情報を含む
user
変数が宣言され、以下に示すようにname
およびage
の属性値を含むオブジェクトが指定される.var user = { name: "Sue", age: 100 };
しかし、ある瞬間、user
というユーザの情報の変数を使用すると、その属性値を含むオブジェクトに次のコードで示すような他の情報が追加される場合があり、新しい変数に含まれる場合がある.var developer = { name: "Sue", age: 100, position: "frontend" };
これにより、name: "Sue", age: 100
に対する重複コードが生成される.重複するコードを見ると、重複を減らす案を考えてしまいます!🤔
JavaScriptのPrototypeの継承(継承)概念を用いることで,重複するコードを減らすことができる.
重複するコードを使用して、新しい宣言された変数にコンテンツを追加します.
以前に作成したコードを書き直し、理解します!
var user = { name: "Sue", age: 100 };
var developer = {};
developer.__proto__ = user; // {name: "Sue", age: 100}
developer.name // "Sue"
developer.age // 100
developer // {} > [[Prototype]]: Object > age: 100 name: "Sue"
developer
変数には空のオブジェクトが割り当てられ、developer.__prototype__
変数にはuser
オブジェクトが割り当てられているため、developer
変数が下部に宣言されると、user
変数を持つオブジェクト情報が得られる.상속
とも呼ばれています.Console
developer
には重複するオブジェクト値が含まれており、新しい値を追加するために以下のように記述することができる.developer.position = "frontend"; // "frontend"
developer // {position: 'frontend'} > position: 'frontend' [[Prototype]]: Object > age: 100 name: "Sue"
新しい値position: 'frontend'
だけでなく、親prototype
に含まれる属性name: "Sue", age: 100
も使用できます.Console
上記のオブジェクト、配列、およびその他のデータ型のプロパティおよびメソッドは、
prototype
に含まれ、使用可能になります.Prototype切替後に表示できる値
2.Prototype使用例
下図に示すように、属性とメソッドはobjというオブジェクト変数値に自動的に表示されます.
これは、前述したように、
prototype
に組み込まれているか、組み込まれている.objectの例
arrayの例
オブジェクト情報を拡張するだけでなく、定義された機能も利用できます.
Reference
この問題について(Prototypeの定理), 我々は、より多くの情報をここで見つけました https://velog.io/@sugyinbrs/Prototype-정리テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol