JS if 조건문
조건문 if
- 조건에 따라 실행흐름을 분기시키는 예약어이다.
- 조건에 따라 다르게 실행 시킬 목적으로 사용이된다.
if()괄호 안엔 조건문이 꼭 들가야한다.
if(조건 1){
//실행 1//
} else if(조건 2){
//실행 2//
} else if(조건 3){
// ... //
} else if(조건 n){
//실행 n//
}else{
//그 외 실행
}
if 단독 사용법
괄호식 안에 조건이 참이 되는 경우에만 if안의 코드를 실행하게된다.
if 안의 문장이 한 줄일 경우에 {}중괄호는 생략이 될 수 있다.
num a = 10;
if (a == 10) { //if안의 구문이 한 줄이면 '{' 생략가능
console.log("if 단독 사용법"); // 참이기 때문에 콘솔에 표시됨
}//if안의 구문이 한 줄이면 '}' 생략가능
if ~ else
else는if에 조건에 맞지 않는 조건을 수행할 때 사용한다.
let a = 100;
if(a == 200) { //만약 a가 200과 같다면 실행코드를 실행시켜라
console.log('a가 200과 같다(거짓)'); //거짓이기 때문에 콘솔에 표시되지 않음
} else { //또는 그렇지 않다면 실행코드를 실행시켜라
console.log('a는 200과 같지 않다(참)'); // 참이기 때문에 콘솔에 표시됨
}
조건이 여러가지일 경우 else if
조건이 여러 가지가 있을 경우에는
else if를 통해서 여러 조건을 줄 수가 있다.
if 부터 순차적으로 아래쪽으로 비교해서 그 중 참이 되는 경우에 있는 블록만 실행하고 바로 if문을 빠져나온다.
let num = prompt('숫자만 입력하세요') //입력창 생성
if(num >= 90){ //prompt 창에 입력한 수가 90이상 이라면
console.log ('A등급')
}else if(num >= 80){ //또는 80이상이라면
console.log('B등급')
}else if(num >= 60){ //또는 60 이상이라면
console.log('C등급')
}else{
console.log('D등급')
}
else if가 쓰이는 if조건문의 끝에 붙은 조건에는 else로 마무리를 해야한다.
✏️ if 조건문 연습
점수 계산하기
조건 1. 국어 점수와 영어점수 '둘 다' 90점 이상 = A학점 (and)
조건 2. 국어 점수와 영어점수의 합이 170점 이상 = B학점
조건 3. 국어 점수와 영어점수 '둘 중' 하나만 90점 = C학점
조건 4. 나머지 = D학점
논리연산자||와&&를 사용하여 문제를 풀어보면 되겠당.
📝 연습 시도
let kor = prompt('국어점수');
let eng = prompt('영어점수');
kor = parseInt(kor)
eng = parseInt(eng)
if(kor && eng >= 90){
console.log ('A학점')
} else if (kor + eng >= 170){
console.log ('B학점')
} else if (kor || eng >= 90){
console.log ('C학점')
} else {
console.log ('D학점')
}
해답
kor에도 연산자를 넣어야 하는데 그러지 않아서 오류가 났었다.
🖍️ 맞는 답
let kor = prompt('국어점수');//점수입력창
let eng = prompt('영어점수');
kor = parseInt(kor) //문자열을 숫자로 변환
eng = parseInt(eng)
if(kor >= 90 && eng >= 90){ //국어점수 90점 , 영어점수 90점을 모두 충족하는 경우
console.log ('A학점')
} else if (kor + eng >= 170){ //또는 국어+영어점수의 합이 170점 이상인 경우
console.log ('B학점')
} else if (kor >= 90 || eng >= 90){ // 또는 국어와 영어점수 둘 중 하나가 90점 이상인 경우
console.log ('C학점')
} else { //나머지의 경우
console.log ('D학점')
}
parseInt() : 문자열을 숫자로 변환하는 함수!