이번엔 자바스크립트의 프로그램 흐름 제어에 대해 알아볼 것이다.
종료로는 아래와 같이 있다.
- block statement
- conditional statements
- exception handling statements
모두 프로그램의 전체적인 틀을 짤 때 중요한 개념이다.
block statement에 대해 먼저 알아보겠다.
쉽게 말하면 한 쌍의 중괄호로 감싸 범위를 표현하는 것을 뜻한다.
자바에서는 if, for, while과 같이 사용되지만 자바스크립트에서는 독립적을 존재할 수 있다.
중괄호로 둘러 쌓여 있다는 것 말고는 특별한게 없다.
내부 -> 외부 접근이 가능한 것은 자바와도 같다.
마찬가지로 외부 -> 내부 접근은 안된다.
이제 conditional statements에 대해 알아보겠다.
쉽게말하면 자바의 if - else if - else이다.
조건식을 통해 조건식 성립의 유무에 따라 프로그램 진행 또는 결과가 달라지는 것이다.
아래의 예제를 통해 설명하겠다.
위의 예제와 같이 사용한다.
블럭을 사용해 범위를 표시하고
if의 조건식이 true일 경우 if의 실행문이 실행되고
if의 조건식이 false이고 else if가 true일 때 else if의 실행문이 실행된다.
위의 모든 조건이 false일 경우 else문이 실행된다.
그리고 자바스크립트에서는 ==와 ===가 다르다.
==와 ===의 차이점은 변수의 자료형 확인 유무에 있다.
==는 변수의 자료형을 제외한 변수의 값이 같을 때 == 는 true를 반환하고
===는 변수의 값과 자료형 모두가 같을 때 true를 반환한다.
이제 exception handling statements에 대해 알아보겠다.
throw를 사용하여 예외를 던질 수 있고
try - catch를 사용하여 throw가 던진 예외를 처리할 수 있다.
이때 숫자나 문자열을 던질 수 있지만 정의된 예외유형을 던지는 것이 바람직하다.
예외유형은 아래와 같이 있다. (부분적으로만 표시)
- EvalError
- RangeError
- ReferenceError
- SyntaxError
- TypeError
- URLError
- AggregateError
throw, try, catch는 아래와 같이 사용한다.
exceptional handling은 위와 같이 사용한다.
'Javascript > Javascript 기초' 카테고리의 다른 글
[Javascript] 백틱 (backtick, template literal) (0) | 2022.06.11 |
---|---|
[Javascript] 함수, 화살표 함수 (function, arrow function) (0) | 2022.06.10 |
[Javascript] 루프와 반복 (loop and iteration) (0) | 2022.05.05 |
[Javascript] 변수 (var, const, let) (0) | 2022.05.02 |
[Javascript] 입문 (html-js link) (0) | 2022.05.02 |