728x90
값
10 + 20; // 10 + 20 은 평가되어 숫자 값 30을 생성
- 식(표현식)이 평가되어 생성된 결과
- 모든 값은 데이터 타입을 가지며 메모리에 2진수 비트의 나열로 저장됨
- 변수에 할당되는 것은 값
리터럴
//1. 리터럴 표현식
10
'hello'
//2. 식별자 표현식(선언이 이미 존재한다고 가정)
sum
arr[1]
//3. 연산자 표현식
10 + 20
sum = 10
//4. 함수, 메서드 호출 표현식(선언이 이미 존재한다고 가정)
sol()
- 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법
- 자바스크립트 엔진은 코드가 실행되는 런타임에 리터럴을 평가해 값을 생성
표현식
- 값으로 평가될 수 있는 문(리터럴, 식별자, 연산자, 함수 호출 등)
- 표현식이 평가되면 새로운 값을 생성하거나 기존 값을 참조함
문
- 프로그램을 구성하는 기본 단위이자 최소 실행 단위
- 문의 집합으로 이루어진 것이 바로 프로그램
- 문을 작성하고 순서에 맞게 나열하는 것이 프로그래밍
- 문은 여러 토큰으로 구성됨
- 명령문이라고 부름
- 컴퓨터에 내리는 명렁
- 선언문
- 할당문
- 조건문
- 반복문
토큰
- 문법적인 의미를 가짐
- 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소
var sum = 1 + 2 ; => 문
↓ ↓ ↓ ↓ ↓ ↓ ↓
토큰 토큰 토큰 토큰 토큰 토큰 토큰
세미클론
- 문의 종료를 나타냄
- 자바스크립트 엔진은 세미클론으로 문이 종료한 위치를 파악하고 순차적으로 하나씩 문을 실행
- 세미클론 생략 가능함
- 자바스크립트 엔진이 소스코드를 해석할 때 문의 끝이라고 예측되는 지점에 세미클론을 자동으로 붙여주는 세미클론 자동 삽입 기능(ASI)이 암묵적으로 수행됨
표현식인 문 vs 표현식이 아닌 문
var x; // 선언문은 값으로 평가될 수 없으므로 표현식이 아닌 문
x = 10; // 값으로 평가할 수 있으므로 표현식인 문
- 표현식인 문과 표현식이 아닌 문을 구별하는 가장 간단하고 명료한 방법은 변수에 할당해 보는 것
- 표현식인 문은 값으로 평가되기 때문에 변수에 할당 가능
- 표현식이 아닌 문은 값으로 평가할 수 없으므로 변수에 할당하면 에러 발생
- 크롬 개발자 도구에서 표현식이 아닌 문을 실행하면 언제나 undefined를 출력함 => 완료 값
728x90
'FE > 리뷰' 카테고리의 다른 글
모던 자바스크립트 딥다이브 7장 정리 (0) | 2024.03.09 |
---|---|
모던 자바스크립트 딥다이브 6장 정리 (0) | 2024.03.08 |
모던 자바스크립트 딥다이브 4장 정리 (0) | 2024.02.28 |
모던 자바스크립트 3장 정리 (0) | 2024.02.19 |
모던 자바스크립트 딥다이브 2장 정리 (0) | 2024.02.15 |