JS_ js 조건문

E_young_J·2024년 12월 8일

새싹일기🌱

목록 보기
25/28

조건문

  • 어떤 조건에 따라 논리 구조를 나늠
    각 조건을 '분기' 라고도 함
    조건에 따라 서로 다른 문장을 실행함

1. if 문

if (조건식){조건문이 참이라면 문장을 실행}

1. 단일 if 문 (if 1개)

if(5 > 3){
    console.log('옳다');
};

let number = Number(prompt('숫자를 입력해주세요'));
// 1. prompt()로 사용자로부터 값을 입력 받고 (문자열)
// 2.number() 문자열 -> 숫자형 형변환.Number

2. if ~ else 문

if(number > 10) {
    console.log('입력한 수는 10 보다 크다');
}else {
    console.log('입력한 수는 10보다 작거나 같다');
}

3. if ~ "else if" ~ else 문

if (number > 10){
    console.log("입력한 수는 10보다 크다");
}else if (number === 10){
    console.log('입력한 수는 10이다!');
}else {
    console.log('입력한 수는 10보다 작다');
}

4. if ~ "else if" * n ~ else 문

  • else 는 한번만 사용 가능
  • else if는 여러개 사용 가능
if (number > 100 || number < 0) {
    console.log('입력값이 잘못 되었습니다. 숫자의 범위를');
} else if (number >= 90) {
    console.log('A');
} else if (number >= 80) {
    console.log('B');
} else if (number >= 70) {
    console.log('C');
} else if (number >= 60) {
    console.log('D');
} else {
    console.log('F');
};

5. 중첩 if 문

* id, pw 검사하는 함수
*/
function loginUser(){
    let inputId = prompt('아이디 입력'); //prompt() => prompt 창
    let inputPw = prompt('비밀번호 입력');


// Q) userId 와 inputId가 같다면?
// - userPw 와 inputPw를 비교

// Q) inputId에 빈값이 입력이 됐다면?
// - '아이디 입력 안함' 문구를 반환

// Q) 두 경우가 아니라면 (inputId가 틀렸을 때)
// - '아이디 틀림' 문구 반환

    if (userId === inputId){
        if(userPw === inputPw){
            return '로그인 성공';
        } else {
            return '비번 오류! 로그인 실패!';
        }
    } else if (inputId === ''){
        return '아이디를 입력 안함';
    }else {
        return '아이디 오류, 로그인 실패';
    }
}

const result = loginUser();
console.log(result);

2. switch 문

  • 하나 이상의 case 문으로 구성
  • default : switch문 내의 모든 case가 매칭 되지 않을 대 실행
    - 필수는 아니지만, 사용하길 권장
    - if 문의 else 같은 존재
    - switch문의 마지막에 두는 것이 일반적
  • break : 조건을 빠져나갈 때 사용하는 키워드
    - 실행을 중단하고, switch문 블록을 빠져나감
    - 생략하면 다음 case들이 연달아 실행됨
    - = 여러개의 case문을 묶을 수도 있다
let a = 3;
switch (a) {
    case 1:
    case 2:
    case 3:
        console.log('a가 1~3 이군요!');
        break; 
    case 4:
        console.log('a가 4 이군요!');
        break;
    case 5:
        console.log('a가 5 이군요!');
        break;
    default:
        console.log('a가 무슨값인지 모르겠어요');
        break;
};

3. 삼항 연산잔

  • 조건식 ? A : B
  • 조건식이 참이면 'A' 거짓이면 'B'
  • if문을 간단하게!
// 일반 if문
if (num % 2 === 1){
    console.log('홀수');
}else{
    console.log('짝수');
};

//삼항연산자
num % 2 === 1 ? console.log('홀수') : console.log('짝수');

0개의 댓글