조건의 참(true)/ 거짓(false)에 따라서 원하는 코드를 실행시킵니다.
크게 조건문에는 if문과 switch 문이 존재합니다. 이 두가지를 복습해보려합니다.
if문
if (조건식) {
실행 코드
}
위의 코드와 같이 쓰는것이 규칙입니다. 해당 규칙에 () 괄호 안에 조건식이 들어가게 되는데요?
if는 예약어이기에 변수 명이 될 수 없고 조건식이란 (비교, 논리, 함수) 값이 들어가게 됩니다.
그리고 당연하게 따라 붙는건 else인데요?
if (조건식) {
실행 코드
} else {
실행 코드
}
이렇게 사용하게 됩니다.
해석하자면 두개의 코드 블럭안에서 조건식에 해당하는 부분이 참일 경우 if 다음 첫번째 {} 블럭안에 실행 코드가 실행되게 되고 else 거짓일 경우 두번째 {} 블럭안에 실행코드가 실행되게 됩니다. 또한 3번째 형태가있는데요?
if (조건식) {
실행 코드
} else if (또 다른 조건식) {
실행 코드
} else {
실행 코드
}
형태로 보면 1번 조건식이 참이 아닐 경우 두번째 조건식을 확인하고 참일 경우 출력하게 되는 것입니다.
나머지 사항은
ex ) if(조건식) console.log('-------');
이경우는 조건식 뒤에 오는 1줄만 유효 코드로 받아들이게 됩니다.
switch문
switch, case 키워드의 조합으로 조건문을 완성하는 스위치문은 어떻게 사용하는지 복습해보려고합니다.
switch(표현식) {
case 값1 :
표현식 == 값1 일때 실행 코드
break;
case 값2 :
표현식 == 값2 일때 실행 코드
break;
default :
모든 조건에 속하지 않을 떄의 실행 코드
}
이런식으로 사용하게 되는데요~
풀어보면 케이스 1의 값에 해당하게 된다면 그대로 브레이크를 사용해서 1의 표현식이 나타나게 됩니다. 또한 1이 아닌 2라면 2에서 브레이크가 잡히게되고 둘다 해당이 안된다면 default가 실행됩니다.
예제를 확인해보죠
<script>
var x = 10;
switch (typeof x) {
case "number":
document.write("변수 x의 타입은 숫자입니다.");
break;
case "string":
document.write("변수 x의 타입은 문자열입니다.");
break;
case "object":
document.write("변수 x의 타입은 객체입니다.");
break;
default:
document.write("변수 x의 타입을 잘 모르겠네요...");
break;
}
</script>
var x = 10 으로 변수 x는 10이라는 숫자를 넣었죠~ 그 후 스위치 문에서 타입 x를 알아보는 표현식을 넣고 x 타입을 찾아봣습니다. case로 number, string, object와 아닐 경우를 설정하여서 답을 보면 변수 x의 타입은 숫자입니다. 가 출력되는 것을 확인할 수 있네요
마지막으로 정리하면
default 부분은 꼭 적어주지 않아도 되는 부분입니다.
안쓰면 아무것도 출력되지 않고 끝나게 되죠