Core Javascript(6)
-
Ch1
더보기 CORE JAVASCRIPT 1-1 데이터 타입의 종류 크게 다음과 같은 2가지로 구분할 수 있다. 기본형(primitive type) : 숫자(Number), 문자열(String), 불리언(Boolean), null, undefined 등 참조형(reference type) : 객체(Object), 배열(Array), 함수(Function), 날짜(Date), 정규표현식(RegExp) Map, WeakMap, Set, WeakSet 등 1-2-1 메모리와 데이터 메모리 조각인 **비트(bit)**는 고유한 식별자를 통해 위치를 확인한다. → 비트를 묶어, **바이트(btye)**로 표현 (1byte=8bit) - 자바스크립트는 넉넉한 메모리 할당으로, 숫자의 경우 정수형인지 부동소수형인지 **구..
2024.02.25 -
Ch6
- 자바스크립트는 프로토타입 기반 언어 - 클래스 기반 언어에서는 '상속'을 사용하지만 프로토타입 기반 언어에서는 어떤 객체를 원형(prototype)으로 삼고 이를 복제(참조)함으로써 상속과 비슷한 효과를 얻음 프로토타입 개념 이해 Constructor, prototype, instance const instance = new Constructor(); 더보기 1. 어떤 생성자 함수(Constructor)를 new 연산자와 함께 호출하면 2. Constructor에서 정의된 내용을 바탕으로 새로운 인스턴스(instance)가 생성된다. 3. 이때 instance에는 __proto__라는 프로퍼티가 자동으로 부여되는데, 4. 이 프로퍼티는 Constructor의 prototype이라는 프로퍼티를 참조한다..
2024.01.22 -
Ch5
01 클로저의 의미 및 원리 이해 - 클로저는 여러 함수형 프로그래밍 언어에서 등장하는 보편적인 특성 - 클로저란, 어떤 함수 A에서 선언한 변수 a를 참조하는 내부함수 B를 외부로 전달할 경우, A의 실행 컨텍스트가 종료된 이후에도 변수 a가 사라지지 않는 현상 MDN 정의: 클로저란 함수와 그 함수가 선언될 당시의 lexical environment의 상호관계에 따른 현상 선언될 당시의 lexical environment: 실행 컨텍스트의 구성 요소 중 하나인 outerEnvironmentReference에 해당함. LexicalEnvironment의 environmentRecord와 outerEnvironmentReference에 의해 변수의 유효범위인 스코프가 결정되고, 스코프 체인이 가능 - 즉..
2024.01.15 -
Ch4
01 콜백 함수란? 콜백함수는 다른 코드(함수 또는 메서드)에게 인자를 넘겨줌으로써 그 제어권도 함께 위임한 함수이다. 콜백 함수를 위임받은 코드는 자체적인 내부 로직에 의해 이 콜백함수를 적절한 시점에 실행한다. 02 제어권 4-2-1 호출 시점 var count = 0; var cbFunc = function () { console.log(count); if (++count > 4) clearInterval(timer); }; var timer = setInterval(cbFunc, 300); 코드 호출 주체 제어권 cbFunc(); 사용자 사용자 setInterval(cbFunc, 300); setInterval setInterval setInterval에 첫 번째 인자로 cbFunc()를 넘겨주면..
2024.01.15 -
Ch3
this 란? 타 객체지향 언어에서 this는 클래스로 생성한 인스턴스 객체를 의미. 클래스 내부에서만 사용한다. 자바 스크립트에서 this는 어디서든 사용 가능하다. 함수와 객체(메서드)의 구분이 느슨한 자바스크립트에서 this는 실질적으로 이 둘을 구분하는 거의 유일한 기능이다. 1. 상황에 따라 달라지는 this 자바 스크립트에서 this는 기본적으로 함수가 호출될 때 함께 결정된다. (함수가 호출될때 생성되는 실행 컨텍스트는 생성과 동시에 this 바인딩 과정을 거치기 때문. 함수를 어떤 방식으로 호출하느냐에 따라 값이 달라진다.) 전역 공간에서의 this 전역 공간에서 this는 전역 객체를 가리킨다. 전역 객체는 js 런타임 환경에 따라 다른 이름, 정보를 가지고 있는데 브라우저 환경에서 전역..
2024.01.15 -
Ch2
1. 실행 컨텍스트란? 실행 컨텍스트(execution context): 실행할 코드에 제공할 환경 정보들을 모아놓은 객체이다. 자바스크립트는 어떤 실행 컨텍스트가 활성화되는 시점에 선언된 변수를 위로 끌어올리고(호이스팅), 외부 환경 정보를 구성하고, this 값을 설정하는 등의 동작을 수행 동일 환경에 있는 코드들을 실행할 때 필요한 환경 정보들을 모아 컨텍스트를 구성하고, 이를 콜 스택(call stack)에 쌓아올렸다가, 가장 위에 쌓여있는 컨텍스트와 관련 있는 코드들을 실행하는 식으로 전체 코드의 환경과 순서 보장. 우리가 흔히 실행 컨텍스트를 구성하는 방법은 함수를 실행하는 것 뿐이다. 예를 들어, js 콜 스택의 최대 용량을 넘기면 에러를 던진다 var eternalLoop = functio..
2024.01.08