JS 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

elseif에 조건에 맞지 않는 조건을 수행할 때 사용한다.

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() : 문자열을 숫자로 변환하는 함수!