값
값은 식(표현식)이 평가되어 생성된 결과를 말한다. 평가란 식을 해석해서 값을 생성하거나 참조하는 것을 의미한다.
변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름이라고 했다. 따라서 변수에 할당되는 것은 값이다.
<script>
// 변수에는 10 + 20이 평가되어 생성된 숫자 값 30이 할당된다.
var sum = 10 + 20;
</script>
위 예제의 sum 변수에 할당되는 것은 10 + 20이 아니라 10 + 20이 평가된 결과인 숫자 값 30이다.
값은 다양한 방법으로 생성할 수 있다. 위 예제처럼 식으로 생성할 수도 있지만 가장 기본적인 방법은 리터럴을 사용하는 것이다.
리터럴
리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법을 말한다.
리터럴을 사용하면 다음과 같이 다양한 종류의 값을 생성할 수 있다.
표현식
표현식은 값으로 평가될 수 있는 문이다. 즉 , 표현식이 평가되면 새로운 값을 생성하거나 기존값을 참조한다.
<script>
var score = 100;
</script>
위 예제에 보이는 리터럴 100은 자바스크립트 엔진에 의해 평가되어 값을 생성하므로 리터럴
그 자체로 표현식이다.
<script>
var score = 50 + 50;
</script>
50+50은 리터럴과 연산자로 이뤄져 있다. 하지만 50 + 50도 평가되어 숫자 값 100을 생성하므로 표현식이다.
<script>
score; // -> 100
</script>
변수 식별자를 참조하면 변수 값으로 평가된다. 식별자 참조는 값을 생성하지는 않지만 값으로 평가되므로 표현식이다.
이처럼 값으로 평가될 수 있는 문은 모두 표현식이다.
문
문은 프로그램을 구성하는 기본 단위이자 최소 실행 단위다.
문은 여러 토큰으로 구성된다. 토큰이란 문법적인 의미를 가지며, 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소를 의미한다. 예로 키워드 , 식별자 ,연산자 , 리터럴 , 세미콜론 등 특수기호는 문법적인 의미를 가지며, 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소이므로 모두 토큰이다.
문을 명령문이라고도 부른다. 즉 , 문은 컴퓨터에 내리는 명령이다. 문이 실행되면 명령이 실행되고 무슨 일인가가 일어나게 된다.