귀여운 눈높이에서 작성된, 🐰

하루 한 걸음씩, 성장 하는 중 입니다 🫶🏻

Studying/JavaScript

모던 자바스크립트 딥다이브 - 5장 표현식과 문

creamymood 2025. 4. 3. 01:19

5-1 값

값이란 식(표현식)이 평가(=식을 해석하여 값 생성 및 참조 하는 것)되어 생성된 결과.

 

모든 값은 데이터 타입을 가지며, 메모리에 2진수로 나열 되어 저장.

변수는 값을 저장하기 위해, 확보한 메모리 공간 또는 그 메모리 공간의 주소 및 이름이다.

따라서 변수에 할당되는 것은 값이다.

var sum = 10 + 20;

sum 변수에 할당 되는 것은 10+20이 아닌, 평가된 결과의 숫자 30.

 

5-2 리터럴

리터럴은, 사람이 이해 가능한 문자 또는 약속된 기호로써 값을 생성하는 표기법

 

단순한 숫자 3이 아닌, 숫자 리터럴. 사람이 이해할 수 있게 아라비아 숫자를 사용해 숫자 리터럴 3을 기술하면

자바스크립트 엔진은 이를 "평가" 하여 숫자 값 3을 생성.

 

리터럴은 인간이 이해 가능한 문자(아라비아 숫자, 알파벳, 한글 등)또는 미리 약속된 기호(''."",[]) 등으로 표기한 코드.

엔진은 코드가 실행되는 시점인 런타임에 리터럴을 평가하여 값을 생성한다. 

 

5-3 표현식

표현식은 값으로 평가될 수 있는 문.

=> 표현식이 평가되면 새로운 값 생성하거나 기존 값 참조 

 

var score = 100;

여기서 100은 리터럴. 리터럴은 엔진에 의해 평가되므로 리터럴은 그 자체로써 표현식.

 

var score = 50 + 50 ;

해당 예제는 리터럴 + 연산자로 구성. 50+ 50도 연산되어 숫자 100을 생성하므로, 해당 예제도 역시 표현식.

 

score; // →100

변수를 "참조" 하면, 변수 값으로 평가.

식별자 참조는 값을 "생성" 하지는 않지만 "평가"할 수 있으므로, 또한 표현식.

 

이처럼 표현식은 값으로 평가될 수 있는 모든 문이다. (ex : 함수, 리터럴, 식별자, 연산자 등 모두의 조합으로 이루어질 수 있음)

 

표현식은 또 다른 표현식의 일부가 되어 새로운 값을 만들어 낼 수 있다.

 

5-4 문

문이란, 프로그램을 구성하는 기본단위 및 최소 실행 단위.

문은 여러 토큰으로 구성된다. 

 

키워드, 식별자, 연산자, 리터럴, 세미콜론, 마침표 등 모두 문법적인 의미를 갖고, 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소들은 모두 토큰이다.

 

문을 명령문 이라고도 부를 수 있다. 이 말은 즉, 문은 컴퓨터에 명령을 내리는 명령이다.

문에는 다양한 종류가 있는데 선언문, 할당문, 조건문, 반복문 등으로 구분할 수 있다.

문이 실행되면 무슨일이 일어난다.

 

예를들어 변수 선언문을 실행하면, 변수가 선언되고. 할당문을 실행하면 값이 할당된다. 

 

5.5 세미콜론과 세미콜론 자동 삽입 기능

세미콜론은(;) 문의 종료를 나타내는데, 자바스크립트 엔진은 세미콜론 자동 삽입 기능이 암묵적으로 수행되기 때문에, 생략이 가능하지만

간혹 생길 수 있는 오류로 가급적 붙여주는게 좋다.

 

5.6 표현식인 문과 표현식이 아닌 문

표현식인 문 >> 값으로 평가될 수 있는 문

표현식이 아닌 문 >> 값으로 평가 될 수 없는 문.

 

var x;

변수 선언문은 표현식이 아닌 단지 그냥 문 이다.

 

var x: // 변수 선언문은 표현식이 아닌 그냥 문
x = 100; // 할당문은 그 자체로 표현식 이기도 하고, 문이기도 하다. 값처럼 사용 가능