문(statement)
- 문(statement)은 프로그램의 기본 단위이고 최소 실행 단위.
- 프로그램은 문의 집합이고 프로그래밍은 문을 작성, 순서에 맞게 나열하는 것.
- JS에서는 보통 문(statement)의 끝에
;
(세미콜론)을 붙임.
- 한 줄의 문은
;
(세미콜론)을 붙이지 않아도 문제 없지만, 관례적으로 붙임.
- 문은 토큰(문법적으로 더 이상 나눌 수 없는 코드의 기본 요소)으로 구성.
var x = 10;
표현식이 아닌 문(statement)
- 일종의 지시.
- "당신의 일은 볼트에 너트를 끼우는 일입니다."
- 결합할 수 없음. (또한 할당이 불가능 함)
const x = const y;
let x = let y;
블록문(block statement)
- 복합문(compound statement)이라고도 함.
- 여러개의
{}
(중괄호)로 묶은것.
- 주로 제어문과 함께 쓰임.
- 제어문 없이 블록문만 써도 되지만 무의미한 경우가 많음.
- 블록문과 블록 아닌 문을 섞어 쓰는 것은 금지.
예외문
- 문의 실행방식을 바꿈. (일종의 조커)
- 불필요한 연산 줄이기에 효과적.
return
: 문을 무시하고 현재 문을 빠져나감.
break
: 문의 실행 중간에 빠져나감.(stop)
continue
: 문에서 다음 단계로 건너뜀.(skip)
throw
: 예외 핸들러에서 반드시 처리해야 할 예외(exception). 제어문 밖에 있어도 무관.
for (let i = 0; i < 5; i++) {
if (i === 2) continue;
console.log(i);
}
for (let i = 0; i < 5; i++) {
if (i === 2) break;
console.log(i);
}
제어문(control statement)
표현식(expression)
- 결과가 값(value)으로 평가(반환)되는 문. (일종의 요청; 값이 되는 모든 것)
- 표현식은 문(statement)의 일부일 수도 있고, 그 자체가 문 일수도 있음.
- 표현식은 값이 되기 때문에 다른 표현식과 결합해 다른 값을 받을 수 있음.
- 할당 또한 가능. (문은 식별자 등에 할당 불가)
let x, y;
y = x = 3 * 5;
y = x = 3 * 5;
y = x = 15;
y = 15;
15;
연산자(operator) 표현식
- 표현식의 대부분은 연산자(operator) 표현식.
- 곱셈 표현식에서
*
(곱셈 연산자)는 표현식.
- 연산자(operator)에 대한 내용.
식별자 표현식
리털럴 표현식
- 값을 명시적으로 반환.
- 값(value)을 지정하는 방법이거나 값을 이루고 있는 자체.
- 값을 이루는 최소 단위
- 곲셈 표현식에서 피연산자(operand; 곱하는 두 숫자)는 리터럴 표현식.