JavaScript Deep Dive [표현식과 문]

성석민·2022년 6월 17일
3

Deep Dive

목록 보기
2/3
post-thumbnail

값은 식이 평가되어 생성된 결과를 말한다. 여기서의 평가란 식을 해석해서 값을 생성하거나 참조하는 것을 의미합니다.

// sum 변수는 10 + 20이 평가되어 생성된 숫자 30이 할당됩니다.
var sum = 10 + 20;

sum 변수에 할당되는 것은 10 + 20이 아닌 10 + 20이 평가된 결과 값 30입니다.

리터럴

리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법입니다.

리터럴예시
정수 리터럴80
문자 리터럴'hello'
불리언 리터럴true, false
객체 리터럴{ name: '성석민', age: 28 }
배열 리터럴[1, 2, 3, 4, 5]
함수 리터럴function() {}

정수 리터럴의 80은 아라비아 숫자가 아닌 숫자 리터럴입니다.
자바스크립트 엔진은 코드가 실행되는 시점인 런타임에 리터럴을 평가해 값을 생성합니다.

표현식

표현식은 값으로 평가될 수 있는 문입니다. 즉, 표현식이 평가되면 새로운 값을 생성하거나 기존 값을 참조합니다.

var score = 50 + 50;

50 + 50은 숫자 리터럴과 연산자로 이루어져 있으며, 평가되어 숫자 100을 생성하므로 표현식입니다.

문은 프로그램을 구성하는 기본 단위이자 최소 실행 단위입니다.
여러개의 토큰으로 구성되며, 토큰은 문법적인 의미를 가지고 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소를 의미합니다.

var sum = 1 + 2;

var(키워드), sum(식별자),=(연산자),1(리터럴),+(연산자),2(리터럴),;(세미콜론)는 모두 문법적인 의미를 가지며 문법적으로 더 이상 나눌 수 없는 토큰입니다.

은 명령문이라고도 불리며 컴퓨터에 내리는 명령입니다.

선언문, 할당문, 조건문, 반복문 등으로 구분할 수 있습니다.

// 변수 선언문
var x;

// 할당문
x = 20;

// 함수 선언문
function foo () {}

// 조건문
if( x > 1 ) console.log('x');

// 반복문
for(let i = 0; i < 5; i++) {}

틀린 부분이 있거나 보충해야 할 내용이 있다면 댓글이나 DM(sungstonemin)으로 알려주시면 감사하겠습니다😄

profile
기록하는 개발자

0개의 댓글