🔑 키워드 정리
- 파싱(parsing) : 문자나 기호로 구성된 표현식의 의미를 해석하는 것
- 호이스팅 (hoisting) : 변수 선언문이 코드 상 어디에 위치하건 코드의 가장 맨 위로 올려진 것처럼 동작하는 특징
- 가비지 콜렉터 (garbage collector) : 더 이상 사용되지 않는 메모리(=어떤 식별자도 참조하지 않는 메모리 공간)를 해제하는 기능.
- 매니지드 언어(managed language)와 언매니지드 언어(unmanaged language) : 메모리 제어를 허용하지 않는 언어와 허용하는 언어.
🗒 내용 정리
- 변수
- 변수란 값을 저장하기 위한 메모리 공간이자 값의 위치를 가리키는 상징적인 이름이다.
- 변수 이름을 식별자라고도 한다. 값을 구별할 수 있는 고유한 이름이다. 값이 아니라 메모리 주소를 기억한다. 변수, 함수, 클래스 모두 식별자이다.
- var 키워드
- var 키워드의 단점은 블록 레벨 스코프를 지원하지 않고, 함수 레벨 스코프를 지원한다는 것이다. (15.1절 참고)
- 선언을 할 때마다 undefined 라는 값으로 초기화를 진행하므로 쓰레기 값이 생기는 문제로부터 비교적 안전하다.
- 기타
- 자바스크립트는 개발자의 직접적인 메모리 제어를 허용하지 않는다. 메모리 주소는 코드가 실행될 때 임의로 결정된다.
- 변수 호이스팅은 런타임 이전에 실행된다. 반면에 값의 할당은 런타임에 실행된다. (23장 참고)
- 자바스크립트에서는 변수나 함수 이름에는 카멜 케이스, 생성자 함수나 클래스 이름에는 파스칼 케이스가 사용된다.
// 카멜 케이스 var testName; // 파스칼 케이스 var TestName;
'Today I Learned' 카테고리의 다른 글
운영체제와 정보기술의 원리3 컴퓨터 시스템의 동작 원리 (0) | 2022.01.23 |
---|---|
모던 자바스크립트 Deep Dive 5장 표현식과 문 (0) | 2022.01.16 |
운영체제와 정보기술의 원리2 운영체제 개요 (0) | 2022.01.13 |
운영체제와 정보기술의 원리1 컴퓨터 및 정보기술의 역사 (0) | 2022.01.04 |
리팩터링 2판 챕터12 - 상속 다루기 (0) | 2021.12.29 |