Prototype 프로토타입과 프로토타입 상속 예를 들어 user라는 객체가 있는데 이 user와 굉장히 유사하지만 약간의 차이가 있는 객체를 만들어야 된다고 생각해보면 어떤 방식이 가장 효율적일까? 자바스크립트의 객체는 [[prototype]]이라는 숨김 프로퍼티를 갖는다 이 값은 null이거나 다른 객체에 대한 참조가 되는데 다른 객체를 잠초하는 경우 참조대상을 '프로토타입(prototype)'이라 부른다 [[prototype]]은 ... proto상속Prototypeinheritance프로토타입InheritInherit Prototype - 1. Prototype 디자인 이론 클래스 문법이 생기고 (적어도 내가 아는)많은 개발자들이 프로토타입보다는 클래스로 객체 지향 프로그래밍을 하고 있지만, 이 프로토타입이라는 것에 대해 조금은 알 필요가 있다. 왜냐하면 자바스크립트의 클래스는 프로토타입으로 구현되어 있고 프로토타입을 어느 정도 알고 있어야, 자바스크립트의 난해했던 부분들(호이스팅, this ...)을 암기가 아닌 이해로 받아들일 수 있기 때문이다. 어휘(lex... thishoistingPrototypeJavaScriptclosurescopeobjectobject orientedlexicalcontextclassJavaScript 자바스크립트에서 __proto__ VS. prototype 비교 __proto__는 메서드 등을 체인을 타고 찾는데 사용되는 실제 객체이다. prototype은 new로 인스턴스를 만들 때 __proto__를 생성하는 데 사용하는 객체다. 함수 정의 코드를 실행하면, 자바스크립트는 해당 함수에 prototype 프로퍼티를 추가한다. 해당 prototype 프로퍼티는 constructor와 __proto__라는 두 개의 프로퍼티를 가진 객체다. - 브라우저... protoPrototypePrototype 프로토타입(Prototype) 톺아보기 자바스크립트에는 Prototype Link 와 Prototype Object라는 것이 존재한다. 프로토타입 객체(Prototype Object) 해당 함수의 Prototype Object 생성 및 연결 함수를 정의하면 함수만 생성되는 것이 아니라 Prototype Object도 같이 생성이 된다. 함수는 prototype이라는 속성을 통해 Prototype Object에 접근할 수 있다. P... CSJavaScriptPrototypeCS TIL 25 | JavaScript 객체 지향 프로그래밍 02 👏🏻 그렇기 때문에 이런 형식의 객체를 찍어내는 공장(constructor)을 만들거고, 이제 그 공장을 이용해서 객체를 양산해보자!! 그리고 이 Date 를 이용할때에는 new 라는 키워드를 붙여주고 하지만 그럼에도 우린 d1 이라는 객체를 사용할 수 있다. 그런데 앞에 new 라는 키워드를 붙이면 이제 이 함수는 더이상 일반적인 함수가 아니라!! → kim2에 있는 new Person이나... JavaScriptPrototypeObject Oriented ProgrammingJavaScript 자바스크립트 prototype에 대하여 ECMAScript 2015부터 [[Prototype]]에 조상 Object.getPrototypeOf()과 Object.setPrototypeOf()을 이용하여 접근하기 때문이다. 이것은 자바스크립트의 표준은 아니나 많은 브라우저에 구현되어 사실상의 표준이 된 속성 __proto__과 동일하다. 라고 되어있고 이는 표준에서는 [[Prototype]]이라 쓰지만 브라우저상에서는 __proto... Prototypejs prototypePrototype 클래스와 프로토타입 & 프로토타입 체인 모델의 청사진을 만들 때 쓰는 원형객체(original form)입니다. 함수는 객체다. 그러므로 생성자 함수도 객체(프로퍼티를 가질수 있다)다. prototype이라는 프로퍼티는 그 용도가 약속되어 있는 특수한 프로퍼티다. 클래스 생성시 prototype 생성 인스턴스 제작시 steve.proto; 생김 프로토타입이 상위 프로토타입까지 연결되는 구조를 말합니다. 즉, 하위 프로토타입은 상위... PrototypeclassPrototype [TIL 2021.11.12] 프로토타입과 상속 프로토타입은 상속이랑 비슷하다. 자바스크립트로 상속을 구현하는 것이 프로토타입을 이용하는 것이다. 객체나 배열 등 모두 프로토타입을 가지고 있다. 프로토타입에서 자바스크립트 네이티브 API를 사용할수있던것이다. 위 코드처럼 사용할수도있지만 개별적인 프로퍼티도 설정해줄수있다.... protoPrototype상속jsPrototype JavaScript 15 프로토타입(Prototype) 여기서 Champ의 prototype에 {eSkill : '쿵'} 프로퍼티를 추가함 1️⃣ console.log(Malphite.eSkill); 근데 위에서 Malphite 객체에 따로 {eSkill : '쿵'}이라는 속성을 추가한 적이 없는데 이게 찍히는 이유는? 👉🏼 부모역할을 하는 Champ의 prototype(=유전자)에 속성을 추가했기 때문! 이렇게 되면 자식인 Malphite는 따... TILJavaScriptPrototypeJavaScript TIL_20210327 자바스크립트의 객체는 명세서에서 명명한 [[Prototype]]이라는 숨김 프로퍼티가 존재. 이 숨김 프로퍼티 값은 null이거나 다른 객체에 대한 참조가되는데, 다른 객체를 참조하는 경우 참조 대상을 '프로토타입(prototype)'이라 함 oject에서 프로퍼티를 읽으려고 하는데 해당 프로퍼티가 없으면 자바스크립트는 자동으로 프로토타입에서 프로퍼티를 탐색. 이러한 동작 방식을 '프로토타입... Prototype상속accessor property접근자 프로퍼티프로토타입 체이닝프로토타입Prototype 객체지향프로그래밍(OOP) in JS 큰 범위로 봤을 때, 프로그래밍 언어는 아래와 같이 나눌 수 있다 Machine Languages (기계어) Assembly Languages (어셈블리어) High-Level Languages (low-level일수록 어셈블리 언어에 가깝고 high-level일수록 인간어에 가깝다.) Machine Languages Assembly Languages 기계어에서 좀 더 프로그래밍하기 쉽게 만... 객체지향JavaScriptPrototypeTILJavaScript 2021-12-21(화) 7주차 2일 클래스 설계도에 따라 준비한 메모리 ⇒ '인스턴스(instance)=객체(object)'라고 한다. Contact 인스턴스의 주소를 저장하는 변수 = 레퍼런스(reference) 레퍼런스 : 인스턴스의 주소를 저장하는 변수 Contact 설계도에 따라 준비한 메모리 ⇒ Contact의 인스턴스 ⇒ Contact의 객체 레퍼런스 배열 → 레퍼런스 변수를 한 번에 만든 거 println한테 co... 클래스 문법 - 데이터 타입 정의레퍼런스 배열자바스크립트 객체 생성자바 클래스 문법자바 레퍼런스자바스크립트Prototype자바 메서드Prototype
프로토타입과 프로토타입 상속 예를 들어 user라는 객체가 있는데 이 user와 굉장히 유사하지만 약간의 차이가 있는 객체를 만들어야 된다고 생각해보면 어떤 방식이 가장 효율적일까? 자바스크립트의 객체는 [[prototype]]이라는 숨김 프로퍼티를 갖는다 이 값은 null이거나 다른 객체에 대한 참조가 되는데 다른 객체를 잠초하는 경우 참조대상을 '프로토타입(prototype)'이라 부른다 [[prototype]]은 ... proto상속Prototypeinheritance프로토타입InheritInherit Prototype - 1. Prototype 디자인 이론 클래스 문법이 생기고 (적어도 내가 아는)많은 개발자들이 프로토타입보다는 클래스로 객체 지향 프로그래밍을 하고 있지만, 이 프로토타입이라는 것에 대해 조금은 알 필요가 있다. 왜냐하면 자바스크립트의 클래스는 프로토타입으로 구현되어 있고 프로토타입을 어느 정도 알고 있어야, 자바스크립트의 난해했던 부분들(호이스팅, this ...)을 암기가 아닌 이해로 받아들일 수 있기 때문이다. 어휘(lex... thishoistingPrototypeJavaScriptclosurescopeobjectobject orientedlexicalcontextclassJavaScript 자바스크립트에서 __proto__ VS. prototype 비교 __proto__는 메서드 등을 체인을 타고 찾는데 사용되는 실제 객체이다. prototype은 new로 인스턴스를 만들 때 __proto__를 생성하는 데 사용하는 객체다. 함수 정의 코드를 실행하면, 자바스크립트는 해당 함수에 prototype 프로퍼티를 추가한다. 해당 prototype 프로퍼티는 constructor와 __proto__라는 두 개의 프로퍼티를 가진 객체다. - 브라우저... protoPrototypePrototype 프로토타입(Prototype) 톺아보기 자바스크립트에는 Prototype Link 와 Prototype Object라는 것이 존재한다. 프로토타입 객체(Prototype Object) 해당 함수의 Prototype Object 생성 및 연결 함수를 정의하면 함수만 생성되는 것이 아니라 Prototype Object도 같이 생성이 된다. 함수는 prototype이라는 속성을 통해 Prototype Object에 접근할 수 있다. P... CSJavaScriptPrototypeCS TIL 25 | JavaScript 객체 지향 프로그래밍 02 👏🏻 그렇기 때문에 이런 형식의 객체를 찍어내는 공장(constructor)을 만들거고, 이제 그 공장을 이용해서 객체를 양산해보자!! 그리고 이 Date 를 이용할때에는 new 라는 키워드를 붙여주고 하지만 그럼에도 우린 d1 이라는 객체를 사용할 수 있다. 그런데 앞에 new 라는 키워드를 붙이면 이제 이 함수는 더이상 일반적인 함수가 아니라!! → kim2에 있는 new Person이나... JavaScriptPrototypeObject Oriented ProgrammingJavaScript 자바스크립트 prototype에 대하여 ECMAScript 2015부터 [[Prototype]]에 조상 Object.getPrototypeOf()과 Object.setPrototypeOf()을 이용하여 접근하기 때문이다. 이것은 자바스크립트의 표준은 아니나 많은 브라우저에 구현되어 사실상의 표준이 된 속성 __proto__과 동일하다. 라고 되어있고 이는 표준에서는 [[Prototype]]이라 쓰지만 브라우저상에서는 __proto... Prototypejs prototypePrototype 클래스와 프로토타입 & 프로토타입 체인 모델의 청사진을 만들 때 쓰는 원형객체(original form)입니다. 함수는 객체다. 그러므로 생성자 함수도 객체(프로퍼티를 가질수 있다)다. prototype이라는 프로퍼티는 그 용도가 약속되어 있는 특수한 프로퍼티다. 클래스 생성시 prototype 생성 인스턴스 제작시 steve.proto; 생김 프로토타입이 상위 프로토타입까지 연결되는 구조를 말합니다. 즉, 하위 프로토타입은 상위... PrototypeclassPrototype [TIL 2021.11.12] 프로토타입과 상속 프로토타입은 상속이랑 비슷하다. 자바스크립트로 상속을 구현하는 것이 프로토타입을 이용하는 것이다. 객체나 배열 등 모두 프로토타입을 가지고 있다. 프로토타입에서 자바스크립트 네이티브 API를 사용할수있던것이다. 위 코드처럼 사용할수도있지만 개별적인 프로퍼티도 설정해줄수있다.... protoPrototype상속jsPrototype JavaScript 15 프로토타입(Prototype) 여기서 Champ의 prototype에 {eSkill : '쿵'} 프로퍼티를 추가함 1️⃣ console.log(Malphite.eSkill); 근데 위에서 Malphite 객체에 따로 {eSkill : '쿵'}이라는 속성을 추가한 적이 없는데 이게 찍히는 이유는? 👉🏼 부모역할을 하는 Champ의 prototype(=유전자)에 속성을 추가했기 때문! 이렇게 되면 자식인 Malphite는 따... TILJavaScriptPrototypeJavaScript TIL_20210327 자바스크립트의 객체는 명세서에서 명명한 [[Prototype]]이라는 숨김 프로퍼티가 존재. 이 숨김 프로퍼티 값은 null이거나 다른 객체에 대한 참조가되는데, 다른 객체를 참조하는 경우 참조 대상을 '프로토타입(prototype)'이라 함 oject에서 프로퍼티를 읽으려고 하는데 해당 프로퍼티가 없으면 자바스크립트는 자동으로 프로토타입에서 프로퍼티를 탐색. 이러한 동작 방식을 '프로토타입... Prototype상속accessor property접근자 프로퍼티프로토타입 체이닝프로토타입Prototype 객체지향프로그래밍(OOP) in JS 큰 범위로 봤을 때, 프로그래밍 언어는 아래와 같이 나눌 수 있다 Machine Languages (기계어) Assembly Languages (어셈블리어) High-Level Languages (low-level일수록 어셈블리 언어에 가깝고 high-level일수록 인간어에 가깝다.) Machine Languages Assembly Languages 기계어에서 좀 더 프로그래밍하기 쉽게 만... 객체지향JavaScriptPrototypeTILJavaScript 2021-12-21(화) 7주차 2일 클래스 설계도에 따라 준비한 메모리 ⇒ '인스턴스(instance)=객체(object)'라고 한다. Contact 인스턴스의 주소를 저장하는 변수 = 레퍼런스(reference) 레퍼런스 : 인스턴스의 주소를 저장하는 변수 Contact 설계도에 따라 준비한 메모리 ⇒ Contact의 인스턴스 ⇒ Contact의 객체 레퍼런스 배열 → 레퍼런스 변수를 한 번에 만든 거 println한테 co... 클래스 문법 - 데이터 타입 정의레퍼런스 배열자바스크립트 객체 생성자바 클래스 문법자바 레퍼런스자바스크립트Prototype자바 메서드Prototype