[모던 자바스크립트 Deep Dive]22장 this
21.1 this 키워드 객체: 상태를 나타내는 프로퍼티와 동작을 나타내는 메서드를 하나의 논리적 단위로 묶은 복합 자료구조 this 탄생 배경 메서드가 자신이 속한 객체를 가리키는 식별자를 참조할 방법이 필요 재귀적으로 참조하는 경우 ⇒ 바람직하지 않다. const circle = { ...
21.1 this 키워드 객체: 상태를 나타내는 프로퍼티와 동작을 나타내는 메서드를 하나의 논리적 단위로 묶은 복합 자료구조 this 탄생 배경 메서드가 자신이 속한 객체를 가리키는 식별자를 참조할 방법이 필요 재귀적으로 참조하는 경우 ⇒ 바람직하지 않다. const circle = { ...
21.1 자바스크립트 객체의 분류 표준 빌트인 객체(standard built-in objects/native objects/global objects) ECMAScript 사양에 정의된 객체 ⇒ 실행 환경 상관없이 사용 가능 애플리케이션 전역의 공통 기능 제공 전역 객체의 프로퍼티로 제공 ⇒ 선언 없이...
20.1 strict mode란? 기존의 오류가 발생하기 쉬운 환경 function foo() { x = 10; } foo(); console.log(x); // 10 자바스크립트 엔진은 foo 함수의 스코프에서 x 변수의 선언을 검색 없음 자바스크립트 엔진은 foo 함수의 상위 스코프, 즉 ...
서론 자바스크립트는 명령형, 함수형, 프로토타입 기반 객체지향 프로그래밍을 지원하는 멀티 패러다임 프로그래밍 언어다. C++나 자바는 클래스 기반 객체지향 프로그래밍 언어다. 자바스크립트에서 원시 타입 값을 제외하고 나머지 모두는 객체이다. 19.1 객체지향 프로그래밍 객체지향 프로그래밍: 객체의...
18.1 일급 객체 다음 조건을 모두 만족하는 객체를 일급 객체라 한다. 무명의 리터럴로 생성 가능 즉 런타임에 생성 가능 변수나 자료구조에 저장 가능 함수의 매개변수에 전달 가능 함수의 반환값으로 사용 가능 자바스크립트의 함수는 위 조건을 모두 만족하므로 일급 객체이다. // 1. 함수는 무...
17.1 Object 생성자 함수 생성자 함수(constructor): new 연산자와 함께 호출해 객체를 생성하는 함수 Object, String, Number, Boolean, Function, Array, Date, RegExp, Promise 등 // String 생성자 함수에 의한 String...
16.1 내부 슬롯과 내부 메서드 ECMAScript 사양에서 사용하는 의사 프로퍼티(pseudo property)와 의사 메서드(pseudo method) 이중 대괄호로 감싸서 표현 자바스트립트 엔진의 구현 알고리즘을 설명 내부 로직이므로 원칙적으로는 직접 접근이나 호출 불가 ...
15.1 var 키워드로 선언한 변수의 문제점 15.1.1 변수 중복 선언 허용 초기화 문: 변수 선언과 동시에 초깃값을 할당하는 문 var x = 1; var y = 1; // var 키워드로 선언된 변수는 같은 스코프 내에서 중복 선언을 허용한다. // 초기화문이 있는 변수 선언문은 자바스크립트 엔진에 의해 var 키워드가 없는 것처...
14.1 변수의 생명 주기 생명 주기: 메모리 공간이 확보(allocate)된 시점 ~ 메모리 공간이 해제(release)되어 가용 메모리 풀(memory pool)에 반환되는 시점 전역 변수의 생명 주기: 애플리케이션의 생명 주기 14.1.1 지역 변수의 생명 주기 var x = "global"; function foo() { ...
어떻게 해야 프로그램에서 데이터를 잘 구성하고 처리할까 서론 데이터 구조(data structure): 데이터를 조직화하는 표준적 방법 참조 지역성(locality of reference): 필요한 데이터를 메모리에서 서로 근처에 유지하고, 금방 사용할 데이터는 더 가까운 곳에 저장하는 것 기본 데이터 타입 프로그래밍 언...