반응형
# 자바스크립트 학습
# switch
- switch문의 형태
switch(표현식) {
case 표현식: 무장 리스트opt
default; 문장 리스트opt
}
- switch문에서 표현식의 평가 값과 일치하는 case 문을 수행한다.
var exp = 1;
switch(exp) {
case 1:
log(100);
case 2:
log(200);
}
=>
100
200
break가 없으면 해당하는 case부터 전부 실행.
- break의 사용 예
var exp = 1;
switch(exp) {
case 1:
log(100);
break;
case 2:
log(200);
}
=>
100
break로 인해 해당 case 실행 후 종료.
- default : 일치하는 case가 없으면 실행된다.
var exp = 7, value;
switch(exp) {
case 1:
value = 100;
default:
value = 700;
case 2:
value = 200;
}
log(value);
=>
200
해당하는 값이 없으므로 default 실행, break가 없으므로 다음 문장 실행
- OR (||) 형태 예
var exp = 3;
switch(exp) {
case 2:
case 3: // 2 or 3
log(100);
}
=>
100
# try ~ catch
- try ~ catch문의 형태
1. try 블록 catch (식별자) 블록
2. try 블록 finally 블록
3. try 블록 catch (식별자) 블록 finally 블록
- try 문에서 예외 발생을 인식, 예외가 발생하면 catch 블록 실행
var value;
try {
value = ball;
} catch(error) {
log("catch 실행");
}
=>
catch 실행
value 변수를 선언만 했고, value변수에 ball이라는 변수를 할당,
ball 변수가 선언되어 있지 않으므로 try 문에서 예외(에러) 발생하여 catch문 실행
try ~ catch 문에 위 사항들을 작성하지 않았다면 에러로 인행 프로그램이 중단된다.
하지만, try ~ catch문을 통해 프로그램 중단 없이 예외 발생 시 catch문이 실행된다.
- 서버에서 데이터를 가져올 때(통신을 할 때)는 에러 발생등에 사전에 대비하여 프로그램이 중단되는 일이 생기지 않도록 반드시 try ~ catch문에 작성을 해야 한다.
- finally 블록은 예외 발생과 관계없이 실행된다.
var sports;
try {
sports = ball;
} catch(error) {
log("catch 실행");
} finally {
log("finally 실행");
};
=>
catch 실행
finally 실행
sports 변수에 ball 할당 시 ball 변수 선언된 적이 없어 에러 발생.
이로 인해 catch문 실행, finally 실행
만약 에러가 발생하지 않았을 경우엔 try문 실행, finally 실행
# throw
- throw 형태
throw 표현식;
- 명시적으로 예외를 발생시킬 때 사용한다.
- 예외가 발생하면 catch문을 실행한다.
try {
throw "예외 발생시킴";
var sports = "스포츠";
} catch(error) {
log(error);
log(sports);
}
=>
예외 발생시킴
undefined
throw문으로 인해 의도적으로 에러 발생하여 throw 메세지 출력; 세미콜론 다음 문장은 실행되지 않는다.
try {
throw {
msg: "예외 발생시킴".
bigo: "임의의 이름 사용"
};
} catch(error) {
log(error.msg);
log(error.bigo);
};
=>
예외 발생시킴
임의의 이름 사용
try {
throw new Error("예외 발생시킴");
} catch(error) {
log(error.message);
};
=>
예외 발생시킴
# strict 모드
- strict 모드 형태
"use strict"
- 엄격하게 자바스크립트(JS) 문법 사용의 선언
- 작성한 위치부터 적용된다.
book = "책";
log(book);
=>
책
var을 작성하지 않은 형태
var을 사용하여 변수를 선언해야 하지만, 변수가 선언되고 "책"이 할당된다.
user strict 작성
"use strict";
try {
book = "변수 선언하지 않음";
log(book);
} catch(error) {
log(error.message);
}
=>
변수 선언하지 않음
var 키워드를 작성하지 않은 형태
use strict로 코딩 실수를 예방할 수 있다.
- ES 5부터 지원한다.
반응형
'인프런 강의 학습 > 자바스크립트 비기너' 카테고리의 다른 글
자바스크립트 학습 10일차 (0) | 2020.12.13 |
---|---|
자바스크립트 학습 9일차 (0) | 2020.12.13 |
자바스크립트 학습 7일차 (0) | 2020.12.10 |
자바스크립트 학습 6일차 (0) | 2020.12.09 |
자바스크립트 학습 5일차 (0) | 2020.12.08 |