prototype
[javascript] 7. JavaScriptコンストラクタとプロトタイプ
JavaScript:プロトタイプの理解
https://www.notion.so/prototype-da139fe137ac4559ac5793679962b03a#dcb78ffe8653403e813a4cfa5d83d050
与えられたインスタンスに必要な値がない場合、その親(オブジェクト)のプロトタイプが受信されます.
関数を定義すると、プロトタイプオブジェクトが定義され、オブジェクトのメンバーとして使用されます.
constructorプロパティは、プロトタイプオブジェクトを生成する関数への参照を表します.
このプロトタイプオブジェクトのコンストラクション関数プロパティは、継承によってインスタンスからアクセスできます.
ソース:
https://webclub.tistory.com/392
[Web Club]
プロトタイプ、コンストラクション関数、インスタンス
ここで注意すべきは,コンストラクション関数属性は関数名だけではない. これは関数オブジェクトへの参照です.
constructor prototypeプロパティはジェネレータ自体への参照であるため、この値で関数を呼び出すか、次のようにオブジェクトを作成できます.
ソース:
https://webclub.tistory.com/392
[Web Club]
空のオブジェクト を作成プロトタイプ継承
[ECMAScript][翻訳]オブジェクト。create()とnew演説者の違いを知る|MINJUNG
(JavaScript)継承オブジェクト Object.createはオブジェクトを作成しますが、作成者は実行しません.つまり、原型の のみが加わる
JavaScript:プロトタイプの理解
https://www.notion.so/prototype-da139fe137ac4559ac5793679962b03a#dcb78ffe8653403e813a4cfa5d83d050
与えられたインスタンスに必要な値がない場合、その親(オブジェクト)のプロトタイプが受信されます.
Object.prototype.me = "you we";
function Person(name) {
this.name = name;
}
const ken = new Person("ken");
//ken은 person의 인스턴스
console.log(ken.me);
object.prototype.constructor = object
CanolaError.prototype.constructor = CanolaError;
constructor
関数を定義すると、プロトタイプオブジェクトが定義され、オブジェクトのメンバーとして使用されます.
constructor
属性があります.constructorプロパティは、プロトタイプオブジェクトを生成する関数への参照を表します.
このプロトタイプオブジェクトのコンストラクション関数プロパティは、継承によってインスタンスからアクセスできます.
ソース:
https://webclub.tistory.com/392
[Web Club]
プロトタイプ、コンストラクション関数、インスタンス
console.log(mySon.constructor == Person.prototype.constructor); // true 반환
console.log(mySon.constructor == Person); // true 반환
Copyここで注意すべきは,コンストラクション関数属性は関数名だけではない. これは関数オブジェクトへの参照です.
constructor prototypeプロパティはジェネレータ自体への参照であるため、この値で関数を呼び出すか、次のようにオブジェクトを作成できます.
ソース:
https://webclub.tistory.com/392
[Web Club]
object.create()
var a = Object.create({});
a;
//{}
var obj = {hello:1}
var ken = Object.create(obj) //ken은 빈 객체
// 빈 객체인 ken의 프로토타입을 obj로 상속
// = 프로토타입을 obj로 갖는 빈 객체 ken 생성
ken.hello;
// 1
Human.prototype = Object.create(Animal.prototype);
Human.prototype.constructor = Human;
// Animal에서 프로토타입을 받아온 이후 다시 constructor 변경
// 문짝을 떼고 내부 공사를 마치면 문짝을 다시 붙여두어야 하는 것과 같은 것
// 위 두 줄은 세트로 함께 쓴다.
Human.prototype.ade;
//ade가 human에 있는지 찾고>없으면 Animal > 없으면 Object에서 찾는다.
prototype override?
新とobject。create()継承を使用する違い
[ECMAScript][翻訳]オブジェクト。create()とnew演説者の違いを知る|MINJUNG
function Dog(){
this.pupper = 'Pupper';
};
Dog.prototype.pupperino = 'Pups.';
var maddie = new Dog();
var buddy = Object.create(Dog.prototype);
//Using Object.create()
console.log(buddy.pupper); //Output is undefined
console.log(buddy.pupperino); //Output is Pups.
//Using New Keyword
console.log(maddie.pupper); //Output is Pupper
console.log(maddie.pupperino); //Output is Pups.
これは新しいDogが実際にジェネレータコードを実行し、Objectです.createはジェネレータコードを実行しません.(JavaScript)継承オブジェクト
Reference
Reference
この問題について(prototype), 我々は、より多くの情報をここで見つけました https://velog.io/@gygy/prototype-x8scos2wテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol