1. var, let, const의 차이점
- var: 함수 범위에서 사용. 변수를 한번 더 선언해도 에러발생하지 않아 위험함
- let: 중괄호 범위(블록)에서 사용.
- const: 중괄호 범위에서 상수를 선언할 때 사용. 따라서 선언과 동시에 할당
즉, var은 가급적 사용을 피하고 재할당 방지를 위해서는 const, 그게 아니라면 let을 사용하자.
2. hoisting
- 함수 내에서 선언된 변수 선언부를 유효범위의 최상단에서 선언함.
- 코드가 옮겨지지는 않고 JS 파서가 함수를 한번 preview하고 함수 도입부에서 선언하여 사용함.
3. Node.JS란?
- 서버환경에서 JS를 실행할 수 있도록 개발된 자바스크립트 런타임
- 이벤트루프가 단일 스레드이므로 I/O가 잦은 서버에 있어 Non-blocking환경에서 효율적임
- 단, blocking이 존재하는 작업 (CPU-Hard한 경우)을 핸들링할 경우 속도가 느려짐
4. 동기와 비동기
- 동기: 요청 후 기다림
- 비동기: 기다리지 않음
5. 클로저
- 반환하는 내부함수가 선언되었을때의 환경을 기억함.
- 즉, 반환하는 내부함수가 선언되기 이전에 어떤 변수를 선언해서 그 안에서 사용할 경우 그 값을 기억함.
'저세상 개발' 카테고리의 다른 글
테크스펙 작성을 위한 효과적인 가이드라인 (A practical guide to writing technical specs) (0) | 2023.05.15 |
---|---|
우리가 nest factory를 실행시킨 사이에... (0) | 2022.05.14 |