javascript

개인 공부/자바스크립트 공부

[자바스크립트] 모던 자바스크립트 DeepDive 공부 #19-5

Chapter19-5 프로토타입 19.14 19.14.1 for...in 문 객체의 모든 프로퍼티를 순회하면서 열거할 경우 for (변수선언문 in 객체) {...} for ... in 문은 객체의 프로토타입 체인 상에 존재하는 모든 프로토타입의 프로퍼티 중에서 프로퍼티 어트리뷰트 [[Enumerable]]의 값이 true인 프로퍼티를 순회하면서 열거함 const person = { name: 'Lee', address: 'Seoul' __proto__: { age: 20 } }; for (const key in person) { console.log(key + ':' + person[key]); } // name: Lee // address: Seoul // ..

개인 공부/자바스크립트 공부

[자바스크립트] 모던 자바스크립트 DeepDive 공부 #19-4

Chapter19-4 프로토타입 19.11 직접 상속 19.11.1 Object.create에 의한 직접 상속 Object.create 메서드는 명시적으로 프로토타입을 지정하여 새로운 객체 생성 /** * 지정된 프로토타입 및 프로퍼티를 갖는 새로운 객체를 생성하여 반환 * @param {Object} prototype - 생성할 객체의 프로토타입으로 지정할 객체 * @param {Object} {propertiesObject} - 생성할 객체의 프로퍼티를 갖는 객체 * @returns {Object} 지정된 프로토타입 및 프로퍼티를 갖는 새로운 객체 */ Object.create(prototype[, propertiesObject]) 장점 new 연산자 없이도 객체 생성 가능 프로토타입을 지정하면서 객..

개인 공부/자바스크립트 공부

[자바스크립트] 모던 자바스크립트 DeepDive 공부 #19-3

Chapter19-3 프로토타입 19.7 프로토타입 체인 function Person(name) { this.name = name; } // 프로토타입 메서드 Person.prototype.sayHello = function() { console.log(`Hi! My name is ${this.name}`); }; const me = new Person('Lee'); // hasOwnProperty는 Object.prototype의 메서드 console.log(me.hasOwnProperty('name')); // true 자바스크립트는 객체의 프로퍼티에 접근하려고 할 떄 해당 객체에 접근하려는 프로퍼티가 없다면 [[Prototype]] 내부 슬롯의 참조를 따라 자신의 부모 ..

개인 공부/자바스크립트 공부

[자바스크립트] 모던 자바스크립트 DeepDive 공부 #19-2

Chapter19-2 프로토타입 19-4 리터럴 표기법에 의해 생성된 객체의 생성자 함수와 프로토타입 // obj 객체를 생성한 생성자 함수는 Object const obj = new Object(); console.log(obj.constructor === Object); // true // add 함수 객체를 생성한 생성자 함수는 Function const add = new Function('a', 'b', 'return a + b'); console.log(add.constructor === Function); // true // 생성자 함수 function Person(name) { this.name = name; } // me 객체를 생성한 생성자 함수..

내캉
'javascript' 태그의 글 목록