값(value)표현식(expression)평가(evaluate) 되어 생성된 결과

리터럴

리터럴(literal)사람이 이해할 수 있는 문자 or 약속된 기호를 사용해 값을 생성하는 표기법(notation)

3

// 숫자 3 => X
// 숫자 리터럴 => O
자바스크립트 엔진은 코드가 실행되는 시점인 "런타임(runtime)" 에 "리터럴을 평가"해 값을 생성한다.

표현식

표현식(expression)으로 평가될 수 있는 문(statement)

var score = 100;
/*
표현식 O
- 100은 숫자 리터럴
- 숫자 리터럴 100은 자바스크립트 엔진에 의해 런타임 시 평가되어 숫자 100을 생성하므로 리터럴은 그 자체로 표현식  
*/

var score = 50 + 50;
/*
표현식 O
- 50 + 50 은 리터럴과 연산자로 이뤄져있다.
- 50 + 50은 자바스크립트 엔진에 의해 평가되어 숫자 값 100을 생성하므로 표현식이다.
*/

score;
/*
표현식 O

- 변수 식별자를 참조하면 변수 값으로 평가된다.
- 식별자 참조는 값을 생성하지는 않지만 값으로 평가되므로 표현식이다.
*/
💡 NOTE

+ 값으로 평가될 수 있는 문(statement)은 모두 표현식(expression)이다.

문(statement) 은 프로그램을 구성하는 기본 단위이자 최소 실행 단위