값
리터럴
- 리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법 (notation)
표현식
- 표현식(expression)은 값으로 평가될 수 있는 문(statement)
- 표현식 → (평가) → 새로운 값을 생성하거나 기존 값을 참조
문
- 문(statement)은 프로그램을 구성하는 기본 단위이자 최소 실행 단위
세미콜론과 세미콜론 자동 삽입 기능
표현식인 문과 표현식이 아닌 문
- 표현식은 문의 일부, 또는 표현식은 문 그 자체 일 수 있음
var x; // 선언문은 값으로 평가될 수 없음 -> 표현식이 아님
1 // 표현식 맞음
1 + 2 // 표현식 맞음
x = 1 + 2; // 표현식 맞음
- 표현식인 문과 표현식이 아닌 문은 변수에 할당해 보는 것
- 표현식은 값으로 평가되므로 변수에 할당 가능
- 표현식이 아닌 문은 값으로 평가될 수 없으므로 에러가 발생
var x; // 변수 선언문
x = 100; // 할당문
var foo = var x; // 할당문은 표현식이므로 값처럼 사용 불가능