Core JavaScript 2

[CoreJavascript] 3과 this

this 바인딩- this binding은 실행 컨텍스트가 활성화 될 때 한다.(= 실행 컨텍스트가 생성되는 순간에 this를 바인딩한다.)- 실행 컨텍스트는 컨텍스트에 해당하는 함수가 호출될 때 생성된다. 곧 this는 함수가 호출될 때에 비로소 결정되는 것이다. 그렇기에 정적으로 코드만 봤을 때 어떤 것의 this가 무엇이다 바로 예측할 수 있는 것이 아니라 이 함수를 어떤 식으로 호출했느냐에 따라서 this가 얼마든지 달라질 수 있다.(= this는 동적으로 바인딩 된다.) 호출하는 방식에 따른 this* 아래의 다섯가지에 대한 차이점을 이해하면 this에 대해 완벽하게 정리할 수 있다.전역공간에서 호출할 경우함수를 함수로서 호출할 경우함수를 메서드로서 호출할 경우함수를 callback 함수로 넘겼..

javascript 2025.01.30

[CoreJavascript] 1과 데이터 타입

JS typeprimitive, reference type으로 구성primitive(원시값)number, string, boolean, null, undefined, Symbol (ES6에 Symbol이 추가)Reference(참조값)Object(객체): Array, Function, RegExp, Set / WeakSet, Map / WeakMap (Set, WeakSet, Map, WeakMap 등 ES6에 추가되었다.)이 두 타입을 구분하는 이유가 있다. 이 두개의 타입은 메모리에 저장되는 형식이 다르기 때문이다.javascript 메모리 구조는 Stack Memory와 Heap Memory 영역으로 구성되어 있다.스택 영역에는 변수, 기본형 데이터 저장(정적 할당)힙 영역에는 참조형 데이터(동적 ..

javascript 2025.01.24