Language/JavaScript(3)
-
Event Loop
콜 스택(Call Stack)함수 호출 정보를 쌓아두고, 실행이 끝나면 다시 이전 위치로 돌아갈 수 있게 한다.자바스크립트는 싱글 스레드 언어로, 한 번에 하나의 작업만 처리할 수 있기 때문에 동기적으로 함수가 호출되고 종료되는 순서를 정확하게 관리한다.에러가 발생했을 때, 스택 내부의 함수 호출 정보를 바탕으로 경로를 추적한다. 브라우저의 에러 메시지에서 Stack Trace가 콜 스택의 내용이다.재귀 함수 등 복잡한 호출 구조에서도 실행 컨텍스트를 쌓아두어 올바르게 동작할 수 있다. 매크로태스크 큐(Macrotask Queue)Task Queue, Event Queue라고도 부른다.SetTimeout, setInterval, DOM 이벤트, I/O, UI 렌더링 등에서 발생한 비동기 콜백 함수가 대기..
2025.05.09 -
hoisting
let변수의 scope가 선언된 블록({})으로 한정되며, 동일한 이름의 변수 재선언 불가.var 변수처럼 호이스팅이 발생하지만, 초기화 전까지 사용할 수 없음.const : let의 속성 + 불변성 hoisting자바스크립트 엔진이 각 스코프의 실행 전에 선언을 미리 처리.코드 실행 전에 변수, 함수, 클래스, import 선언문이 해당 스코프의 맨 위로 끌어올려진 것처럼 동작.var : 선언만 호이스팅 되고, 값 할당은 호이스팅되지 않아 선언 전에 접근하면 undefined 출력.TDZ(Temporal Dead Zone) : let, const로 선언한 변수는 호이스팅은 되지만, 초기화 전에 접근할 수 없어 ReferenceError가 발생하는 구간.함수 : 전체가 호이스팅되어, 선언 전에 호출해도 ..
2025.05.08 -
fetch()
[점프 투 FastAPI] 1-07에서 Svelte 웹 페이지가 FastAPI와 통신할 때 fetch()를 사용한다. {message} json은 많이 들어봤는데 정확한 구조를 오늘 파악해보자. fetch()가 뭐 하는 메서드인가? 참고 : https://ko.javascript.info/fetch fetch() 리소스를 비동기 요청 가능. 주로 API를 호출하고 응답 데이터를 받아올 때 사용. 기본 문법 let promise = fetch(url, [options]) url : 접근하고자 하는 URL. options : 선택 매개변수, method나 header 등 지정. options에 아무것도 지정하지 않으면 GET method로 동작(url로부터 컨텐츠 다운로드). fetch()를 호출하면 브라우..
2024.03.11