표현식과 문
값
: 값은 표현식이 평가되어 생성된 결과
→ 평가란? 식을 해석해서 값을 생성하거나 참조하는 것
변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름
→ 변수에 할당되는 것이 값!
리터럴
:사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법
이는 단순한 숫자가 아니라 숫자 리터럴이다.
→ 사람이 이해할 수 있는 아라비아 숫자로 숫자 리터럴을 코드에 기술 → 자바스크립트 엔진이 이를 평가
사람이 이해할 수 있는 수자, 알파벳, 한글 ,기호 등이 리터럴. 즉, 값을 생성하기 위해 미리 약속한 표기법이라고 할 수 있다.
ex) 정수 리터럴, 2진수 리터럴, 문자열 리터럴, 불리언 리터럴, 객체 리터럴, 함수 리터럴, 배열 리터럴 …
표현식
: 값으로 평가될 수 있는 문 → 표현식이 평가되면 새로운 값을 생성하거나 값을 참조
=값으로 평가될 수 있는 문은 모두 표현식이다.
→ 100은 리터럴인데 자바스크립트 엔진에 의해 평가되어 값을 생성하므로 리터럴 그자체로 표현식이다.
표현식 또한 값으로 평가되는 것이기 때문에 값이 위치할 수 있는 자리에는 표현식이 위치할 수 있다.
문
: 프로그램을 구성하는 기본 단위이자 최소 실행 단위
→ 토큰 : 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소(키워드, 식별자, 연산자, 세미클론…)
→ 토큰이 모여서 문이되고 문이 모여서 프로그램이 된다.
- 문은 명령문이라고 부른다. 즉, 문이 실행되면 명령이 실행되고 무슨 일이 일어난다.
ex) 선언문, 할당문, 조건문, 반복문 …
표현식인 문과 표현식이 아닌 문
:표현식인 문은 값으로 평가될 수 있는 문, 표현식이 아닌 문은 값으로 평가될 수 없는 문
→ 가장 간단한 방법은 변수에 할당해 보는 것!
변수 선언문은 변수에 할당할 수 없기 때문에 표현식이 아니다.
할당문은 변수에 할당할 수 있으므로 표현식이다.