목록전체 글 (298)
\(@^0^@)/

- Hello Coding 알고리즘 4장 퀵 정렬 파트 TIL - JS 기본 문법 실행 콘텍스트 JS가 실행되는 방식을 담고 있는 핵심 원리 JS엔진이 코드를 읽고 실행에 필요한 정보를 모아놓는 것 실행 콘텍스트의 종류 전역(GEC) this, object선언 함수(FEC) 상위 스코프, this, 매개변수, arg Eval 메서드 최근에는 사용하지 않음. 실행 콘텍스트의 단계 생성 단계(Creation Phase) JS엔진이 함수를 호출했지만 실행이 시작되지 않은 단계 실행 단계(Execution Phase) 전역 변수의 값 할당이 발생하며 코드를 실행하는 단계 생성 단계 /* * # 생성 단계 * 1. 전역 객체 생성 * 2. 변수 생성 * 3. 변수는 undefined로 초기화 * 4. hello ..

[ 3장 재귀] 재귀를 쓴다고 성능이 더 나아지지는 않는다. 사실 반복문이 더 성능이 좋은 경우가 많다. 프로그램에 반복문을 사용하면 프로그램의 성능을 향상시킬 수 있지만, 재귀를 사용하면 프로그래머의 능력을 향상시킬 수 있다. 상황에 따라 적절한 방법을 골라 사용해야 한다. 대부분의 중요한 알고리즘들이 재귀를 사용하므로 개념을 잘 이해해야 한다. [ 3장 요약 ] 재귀는 함수가 스스로를 호출하는 것이다. 모든 재귀 함수는 기본 단계와 재귀 단계라는 두 부분으로 나누어져 있다. 스택에는 push와 pop이라는 두 가지 연산이 있다. 모든 함수 호출은 호출 스택을 사용한다. 호출 스택은 너무 커져서 메모리를 엄청나게 소비할 수도 있다. [4장 퀵 정렬] 분할 정복 문제 해결 방법 중에서 가장 유명한 재귀..

- JS 기본 문법 이벤트 루프 (Event Loop) 코드 실행, 이벤트 수집 및 처리, 대기 중인 하위 작업 실행을 담당하는 JS 런타임 모델. 이벤트 루프의 동작 순서를 알아보자. http://latentflip.com/loupe Call Stack : console.log("Hi!"); Console : Hi ! Call Stack : setTimeout함수 Web Apis : Timeout( ) (3초 동안) Call Stack : console.log("Welcome to loupe."); Console : Welcome to loupe. Callback Queue : Timeout( ) Call Stack에 Timeout이 먼저 쌓이고, 그다음 console.log가 쌓여서 스택이므로 최상단..