코어자바스크립트 강의정리 - 5. 클로저
클로저란 실행 컨텍스트 A 안에서 함수 B가 선언 되었을 때, 'A의 lexical environment와 내부함수 B의 조합 에서 나타나는 특별한 현상' 이다. 대체 어떤 특별한 현상이 나타나는지 코드를 통해 살펴보자 var outer = function () { var a = 1 ; var inner = function () { console . log...
- 좋아요수
- 0
클로저란 실행 컨텍스트 A 안에서 함수 B가 선언 되었을 때, 'A의 lexical environment와 내부함수 B의 조합 에서 나타나는 특별한 현상' 이다. 대체 어떤 특별한 현상이 나타나는지 코드를 통해 살펴보자 var outer = function () { var a = 1 ; var inner = function () { console . log...
a라는 함수가 있다. b라는 함수에게 a라는 함수를 넘겨주며 'a라는 함수를 알아서 잘 작동시켜주세요' 라고 하면 b 함수가 a 함수의 제어권을 갖는다. 그리고 a 함수를 콜백함수라고 한다. b함수가 a 함수의 제어권을 갖게 되면 a 함수의 실행시점, 매개변수의 내용, 순서, this(특별히 바인드 하지 않는 이상) 는 모두 b 함수가 결정한다. arr.f...
2강에서 배웠듯이 실행컨텍스트 안에는 VariableEnvironment, LexicalEnvironment, ThisBinding이 있다. 실행컨텍스트가 활성화 될때 ThisBinding을 한다는 것이고, 이는 함수가 호출될때 그제서야 this가 binding(연관, 세팅)된다는 것을 의미한다. 그렇기 때문에 함수를 어떻게 호출하느냐에 따라서 this가 ...
2. 실행 컨텍스트 실행 컨텍스트=코드 흐름상에 배경이 되는 조건/환경정보를 담은 객체=>동일한 조건/환경을 가지는 코드 뭉치 정도로 느낌적인 느낌만 가져가자. 전역변수/지역변수의 개념이 생기는 이유가 이 실행 컨텍스트 때문이라고 보면 될것 같다. 자바스크립트에서 동일한 실행 컨텍스트를 갖게 하는 요인은 크게 네가지 (전역공간,함수,module,eval) ...
1. 데이터 타입 자바스크립트 데이터 종류 (기본형, 참조형) 기본형 데이터 : 정적할당 참조형 데이터 : 동적할당 Why? 기본형 데이터의 할당 방식 var a = 1 이라고 하였을때 자바스크립트 내부적으로는 var a; a = 1; 로 처리 따라서 임의의 메모리 주소(1004) 에 (이름 : a, 값 : 없음) 저장 후 다른 임의의 메모리 주소(5000...