자바스크립트

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

[자바스크립트] 모던 자바스크립트 DeepDive 공부 #20

Chapter20 - strict mode 20.1 strict mode란? 암묵적 전역(Implicit global)은 오류를 발생시킬 수 있는 원인이 될 수 있으므로 반드시 var, const, let으로 변수 선언한 뒤 사용해야함 이러한 암묵적 전역을 예방하기 위해 strict mode가 도입 꿀Tip! : ESLint 사용하기 20.2 strict mode의 적용 전역의 선두 또는 함수의 몸체에 'use strict'; 추가하기 20.3 전역에 strict mode를 적용하는 것은 피하자 전역에 적용한 strict mode는 스크립트 단위로 적용 전역에 사용하면 non-strict mode 서드파티 라이브러리와 충돌을 일으킬 수 있음 20.4 함수 단위로 strict mode를 적용..

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

[자바스크립트] 모던 자바스크립트 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]] 내부 슬롯의 참조를 따라 자신의 부모 ..

내캉
'자바스크립트' 태그의 글 목록