반응형

#값 #리터럴 #표현식 #문
값은 식(표현식)이 평가되어 생성된 결과를 말한다.
- 변수는 하나의 값을 할당하기 위해 확보한 메모리 공간 자체 혹은 공간의 주소를 식별하기 위해 붙인 이름이다. 따라서 변수에 할당 되는 것은 값이다.
리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 통해 값을 생성하는 표기법을 말한다.
- 자바스크립트 엔진은 리터럴을 평가하여 값을 생성한다. 리터럴은 값을 생성하기위해 미리 약속한 표기법이라고 할 수 있다.
// 정수리터럴
100;
// 부동소수점 리터럴
10.5
// 2진수 리터럴
0b010000001
// 8진수 리터럴
0o101
// 16진수 리터럴
0x41
// 문자열 리터럴
'Hello'
// 불리언 리터럴
true, false
// null 리터럴
null
// undefined 리터럴
undefined
// 객체 리터럴
{name : 'Lee', address : 'Seoul'}
// 배열 리터럴
[1,2,3]
// 함수 리터럴
function(){}
// 정규 표현식 리터럴
/[A-Z]+/g
표현식은 값으로 평가될 수 있는 문(Statement) 이다.
- 표현식이 평가되면 새로운 값을 생성하거나 기존의 값을 참조한다.
//리터럴 그 자체도 값으로 평가되기때문데 표현식이다.
var score = 100; // 50
//리터럴과 연산자로 이루어진 표현식은 평가되면 100 이라는 값을 생성한다.
var score = 50 + 50; // 100
// 식별자를 참조하면 값으로 평가된다. 식별자 참조 또한 표현식이다.
score; // 50
문은 프로그램을 구성하는 기본단위이자 최소 실행 단위이다.
- 문은 토큰으로 구성된다.
- 토큰이란 문법적의미를 가지며 문법적으로 더이상 나눌 수 없는 코드, 즉 키워드, 식별자, 연산자, 리터럴, 세미콜론, 마침표, 특수기호등 의미를 가지는 요소를 말한다.
- 문은 선언문, 할당문, 조건문, 반복문 등으로 구분할 수 있다. 각각의 문은 종류에 따라 다르게 동작한다.
표현식인 문은 값으로 평가 되기때문에 변수에 할당할 수 있다.
반대로 표현식이 아닌 문은 값이 아니기 때문에 변수에 할당할 수 없다.
var foo = var x; //표현식이 아닌 문이기때문에 에러가 발생한다.
var foo = x = 100; // 할당문은 그 자체가 표현식이고 문이기 때문에 표현식인 문으로 변수에 할당할 수 있다.
console.log(foo) //100
#값 #리터럴 #표현식 #문
반응형
'프로그래밍 > 자바스크립트 ES6' 카테고리의 다른 글
| 자바스크립트 ES6 #9 타입변환과 단축평가 (0) | 2023.09.12 |
|---|---|
| 자바스크립트 ES6 #8 제어문 (0) | 2023.09.12 |
| 자바스크립트 ES6 #7 연산자 (0) | 2023.09.12 |
| 자바스크립트 ES6 #6 데이터 타입 (0) | 2023.04.06 |
| 자바스크립트 ES6 #4 변수 (0) | 2023.03.29 |