본문 바로가기

🔥JS 뽀개기3

변수 선언 삼형제 var, let, const (feat. TDZ(Temporal Dead Zone)) 자바스크립트의 변수 선언할 때 제일 처음 배우는 var, let, const.... 이 셋을 집중비교해보면 TDZ라는 용어가 나온다..! TDZ에 대해 알아보자. 🤔👊🏻 ✨var vs. let vs. const특성varletconst범위(Scope)함수 범위 또는 전역 범위블록 범위블록 범위재선언(Redeclaration)가능불가능불가능재할당(Reassignment)가능가능불가능호이스팅(Hoisting)선언과 초기화가 함께 이루어짐선언만 호이스팅, 초기화는 이루어지지 않음선언만 호이스팅, 초기화는 이루어지지 않음일시적 사각지대(TDZ)해당 없음해당됨해당됨 ❓TDZ(Temporal Dead Zone)란let과 const로 선언된 변수가 호이스팅되는 과정에서 발생하는 일시적인 사각지대를 의미한다.변수는.. 2024. 6. 14.
비동기 처리 방법 3가지 !비교! ❓비동기 처리(asynchronous processing)프로그램이 작업을 시작한 후에 완료되기를 기다리지 않고 다른 작업을 계속 수행할 수 있게 해주는 프로그래밍 기법✨비동기 처리 방법 3가지1. 콜백가장 기본적인 비동기 처리방식 비동기 작업을 완료한 후 호출되는 함수 여러 개의 중첩된 콜백을 사용하면 가독성이 떨어짐setTimeout(), 이벤트 처리 함수 등…function fetchData(callback) { setTimeout(() => { callback("data received"); }, 1000);}fetchData((data) => { console.log(data); // "data received"});2. Promise콜백 지옥과 같은 문제를 해결하기.. 2024. 5. 20.
이벤트 루프와 태스크 큐 ❓자바스크립트를 멀티 스레드처럼 사용하는 방법이 뭔가요? 이벤트 루프에 대해서 설명해주세요.위의 면접 질문을 받고 새하얗게 기억잃은 나... 뭣도 모르고 자바스크립트 면접 내용 달달 외워서 갔던 나...를 반성하며 이벤트 루프를 조지겠다는 생각으로 쥰내 파봤다.✨이벤트 루프와 브라우저 환경자바스크립는 싱글 스레드로 동작한다. 싱글 스레드: 한 번에 하나의 태스크만 처리한다는 뜻 비동기 로직은 이벤트 루프를 통해 처리된다.힙객체가 저장되는 메모리 공간콜 스택함수 호출 시 실행 컨텍스트가 생성된다.함수를 호출하면 실행 컨텍스트가 순차적으로 콜 스택에 푸시되어 순차적으로 실행된다. 단 하나의 콜 스택을 사용하기 때문에 최상위 실행 컨텍스트가 종료되어 콜 스택에서 제거되기 전까지는 다른 어떤 태스크도 실행하지 .. 2024. 5. 18.
반응형