Github
Postsjs값식문

값식문

A set of two-state buttons that can be toggled on or off

값이란 식이 평가되어 생성된 결과를 말한다.

값으로 평가될 수 있는 문이다.

리터럴은 사람이 이해할 수 있는 문자 또는 기호를 사용해서 값을 생성하는 표기법이다. 3을 친다면하면 단순히 아라비아 숫자를 입력한 것이 아니라 숫자 리터럴을 통해서 자바스크립트는 숫자 3을 생성해서 메모리에 할당한다.

리터럴은 값을 생성하기 때문에 식이라고 할 수 있다.

문은 컴퓨터에 내리는 명령으로 프로그램을 구성하는 기본 단위이자 최소 실행 단위이다.

문은 여러 토큰으로 구성된다. 토큰은 더 이상 나눌 수 없는 코드의 기본 요소를 의미한다. 예를 들어 식별자, 연산자, 리터럴, 마침표 등이 해당된다.

식을 통해서 값을 변수에 할당하는 할당문이나 조건문, 반복문이 해당된다.

표현식인 문과 표현식이 아닌 문이 있다.

표현식은 값으로 사용할 수 있기 때문에 변수에 할당할 수 있고, 표현식이 아닌 문은 변수에 할당할 수 없다.

1const a = const b // const b는 const a에 할당할 수 없다. 선언문은 표현식이 아닌 문이다. 2const b = x = 100 // x = 100은 값으로 사용할 수 있기 때문에 표현식인 문이다.

세미콜론

; 은 문의 종료를 나타낸다. 자바스크립트 엔진은 세미콜론을 보고 문의 종료를 파악하고 순차적으로 실행시킨다. 단, 여러개의 문을 중괄호를 묶은 코드 블럭같은 경우에는 언제나 문의 종료를 의미하기 때문에 세미콜론을 붙이지 않아도 된다.

자바스크립트 엔진에는 자동으로 세미콜론을 붙여주는 자동 삽입 기능이 있지만 개발자의 예측과 일치하지 않는 경우에 혹시 있을 수 있기 때문에 많은 커뮤니티에서는 붙여야한다고 말한다.