값(value)은 식(statement)이 평가되어 생성된 결과를 말한다.
평가란? 식을 해석해서 값을 생성하거나 참조하는 것을 의미.1 + 2; 1 + 2는 평가되어 3이라는 값을 생성한다.
변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리의
공간을 식별하기 위해 붙여진 이름. 💡 변수 = 값(할당)
리터럴은 사람이 이해할 수 있는 문자나 기호로 값을 생성하는 표기법.
컴퓨터는 0과 1을 사용해 모든 것을 인식한다.10
위와 같이 10은 인간에게 정수 10이지 기계어는 그렇지 않을 것이다. 이렇듯 인간이 알아볼 수 있도록 표현하는 것을 리터럴 이라고 한다.
문은 프로그램을 구성하는 기본 단위이자 최소 실행 단위이다. 문이 여러개 모여 프로그램을 이룬다. 문은 여러개의 토큰으로 구성되며, 토큰은 문법적으로 더 나눌 수 없는 코드의 최소 조각이다. 식별자, 세미콜론, 리터럴 등등이 이에 해당된다. 문이 컴퓨터에게 내리는 명령이며 코드의 내용이 실행된다.
const name; // 변수 선언문 name = 'ajrfyd' // 할당문 function iAmFunc() {} // 함수 선언문 if(num === 0) return false // 조건문 for(let i of arr) {} // 반복문
표현식은 값으로 평가될 수 있는 문(statement). 리터럴은 값으로 평가되기에 리터럴도 표현식이다.
const num = 3457; // 3457은 리터럴이다. 3457은 값으로 평가되어 리터럴은 그 자체가 표현식이다. num; // num은 3457이라는 값을 참조한다. 표현식이다. const sum = 1 + 2; // 1 + 2 도 평가되어 값을 생성. 표현식이다.
값으로 평가 된다는 점이 동일 하고, 값으로 평가될 수 있는 문은 모두 표현식. 또한, 표현식은 값으로 평가된다.