조건문
조건문은 조건식의 값이 참(true)인지, 거짓(false)인지에 따라 자바스크립트 코드를 제어한다. 조건문의 종류에는 if문, else문, else if문이 있다.
if문
if문은 조건식을 만족(true)할 경우에만 코드를 실행한다. 조건식은 어떤 어떤 데이터를 입력해도 true 또는 false를 반환한다.
기본형
if(조건식){
자바스크립트 코드;
}
자바스크립트 코드;
}
예제
var num = 10;
if(num<500){ //true를 반환
document.write("hello")
} //hello
조건식에 논리형 데이터가 아닌 다른 형이 오는 경우
조건식에 논리형 데이터(true, false)가 아닌 다른 형의 데이터가 입력되어도 true 또는 false로 인식된다. 0, null, ""(빈 문자), undefined가 조건식에 입력되면false를 반환하고, 그 밖의 값은 true로 인식한다.
//출력되는 경우
var num = 3;
if(num){ //3은 true
document.write(num);
}
//출력되지 않는 경우
var num = 0;
if(num){ //0은 false
document.write(num);
}
else문
else문은 조건식을 만족할(true)경우와 만족하지 않을(false)경우에 따라 실행되는 코드가 달라진다.
기본형 : if(조건식){
자바스크립트 코드1;
} else{
자바스크립트 코드2;
}
자바스크립트 코드1;
} else{
자바스크립트 코드2;
}
예제(회원 탈퇴 여부를 묻는 창)
<script>
var result = confirm("정말로 회원을 탈퇴하시겠습니까?");
//confirm메서드는 [확인]버튼을 누르면 true 값을 반환하고 [취소]버튼을 누르면 false 값을 반환하여 변수 result에 저장
if(result) {
document.write("탈퇴 처리되었습니다.");
} else {
document.write("탈퇴 취소되었습니다.");
}
</script>
//[확인]버튼을 누르면 "탈퇴 처리되었습니다." 출력, [취소]버튼을 누르면 "탈퇴 취소되었습니다." 출력
if else문
if else문은 두 가지 이상의 조건식과 정해 놓은 조건을 만족하지 않았을 때 실행되는 코드로 이루어져 있다.
기본형 : if(조건식1){
코드1;
} else if(조건식2){
코드2;
} else if(조건식3){
코드3;
} else if(조건식4){
코드4;
} else if(조건식5){
코드5; } else{
} else{
코드6;
}
코드1;
} else if(조건식2){
코드2;
} else if(조건식3){
코드3;
} else if(조건식4){
코드4;
} else if(조건식5){
코드5; } else{
} else{
코드6;
}
예제
<script>
var mon = prompt("현재는 몇 월입니까?","0");
if(mon >=9 && mon <= 11){ //9 ~ 11
document.write("독서의 계절 가을이네요!!");
}else if(mon >= 6 && mon <= 8){ //6 ~ 8
document.write("여행가기 좋은 여름이네요!!");
}else if(mon >= 3 && mom <= 5){ //3 ~ 5
document.write("햇살 가득한 봄이네요!!");
}else{ //나머지 입력
document.write("스키의 계절 겨울이네요!!");
} //질문의 답으로 입력한 값이 9,10,11일 땐 가을로 6,7,8일 땐 여름으로 3,4,5일 땐 봄으로 나머지인 12,1,2일 때는 겨울로 나온다.
</script>
중첩 if문
조건문 안에 조건문이 있으면 중첩 if문이라고 한다.
기본형 : if(조건식1){
if(조건식2){
자바스크립트 코드;
}
}
if(조건식2){
자바스크립트 코드;
}
}
중첩 if문은 바깥쪽에 있는 조건문인 조건식1을 만족해야만 안쪽에 있는 조건문인 조건식2를 검사한다. 안쪽 if문의 조건식2를 만족하지 않으면 바깥쪽 조건문인 조건식1의 중괄호 안에 있는 코드만 실행하고 종료한다.
<script>
var id = "easy 1004"; //아이디
var pw = "112233"; //비밀번호
var user_id = prompt("아이디는?",""); //아이디 입력
var user_pw = prompt("비밀번호는?",""); //비밀번호 입력
if(id == user_id) { //아이디가 일치하면 실행됨
if(pw == user_pw){
document.write(user_id+"님 반갑습니다."); //비밀번호가 일치하면 실행됨
} else {
alert("비밀번호가 일치하지 않습니다"); //비밀번호가 일치하지 않으면 실행됨
location.reload( ); //브라우저 새로고침
}
} else {
alert("아이디가 일치하지 않습니다."); //아이디가 일치하지 않으면 실행됨
location.reload( );
}
</script>