자기계발/혼공단

[자기계발] 혼공단10기 자바스크립트 2주차 (조건문)

mylee99 2023. 7. 12. 19:27
2주차(7/10-7/16)
Chapter 03

 

Chapter 03. 조건문

1. if 조건문
조건에 따라서 코드를 실행하거나 코드를 실행하지 않을 때 사용하는 구문
1)  if 조건문
불 표현식의 값이 true면 중괄호 안의 문장을 실행하고, false면 문장을 무시하는 구문

if(불 값이 나오는 표현식) {
    불 값이 참일 때 실행할 문장
}

 

2) if else 조건문
if 조건문 바로 뒤에 else 구문을 붙여서 서로 반대되는 상황을 표현하는 구문

if(불 값이 나오는 표현식) {
    불 값이 참일 때 실행할 문장
} else {
    불 값이 거짓일 때 실행할 문장
}

 

3) 중첩 조건문
조건문 안에 조건문을 중첩해 사용하는 구문

if(불 값이 나오는 표현식 1) {
    //표현식 1이 참이면 실행
    if(불 값이 나오는 표현식 2) {
        표현식 2가 참일 때 실행할 문장
    } else {
        표현식 2가 거짓일 때 실행할 문장
    }
} else {
    //표현식 1이 거짓이면 실행
    if(불 값이 나오는 표현식 3) {
        표현식 3이 참일 때 실행할 문장
    } else {
        표현식 3이 거짓일 때 실행할 문장
    }
}

 

4) if else if 조건문
중첩 조건문에서 중괄호를 생략한 형태의 구문(겹치지 않는 3가지 이상의 조건으로 나눌 때 사용)

if(불 표현식) {
    문장
} else if(불 표현식) {
    문장
} else if(불 표현식) {
    문장
} else {
    문장
}

 

 

2. switch 조건문과 짧은 조건문
1) switch 조건문
값에 따라서 조건 분기를 걸어주는 조건문
조건문의 괄호 안에 비교할 값을 입력하고, 그 값을 기준으로 특정 코드를 실행
break 키워드는 switch 조건문이나 반복문을 빠져나가기 위해 사용하는 키워드

switch(자료) {
    case 조건A:
        break
    case 조건B:
        break
    default:    //생략 가능
        break
}

 

2) 조건부 연산자(삼항 연산자)
피연산자 3개를 갖는 연산자. 조건 분기에 사용 가능

불 표현식 ? 참일 때의 결과 : 거짓일 때의 결과

 

3) 짧은 조건문
논리 연산자의 특성을 조건문으로 사용하는 것
(1) 논리합 연산자를 사용한 짧은 조건문

true || OOO
불 표현식 || 불 표현식이 거짓일 때 실행할 문장

 

(2) 논리곱 연산자를 사용한 짧은 조건문

false && OOO
결과가 거짓인 불 표현식 && 불 표현식이 참일 때 실행할 문장

 

 

2주차 기본 미션

p.139의 확인문제 3번 문제 풀고 완전한 코드 만들어 비쥬얼 스튜디오 코드에서 실행 결과 인증하기

//정답 : &&
//숫자 x를 prompt에서 입력받아 사용함.
const x = Number(prompt('숫자를 입력하세요.', ''))
if(x > 10 && x < 20) {
    console.log('조건에 맞습니다.')
}

 

2주차 선택 미션

p.152의 <태어난 연도를 입력받아 띠 출력하기> 예제 실행하여 본인의 띠 출력한 화면 캡처하기

//if else if 조건문 사용해보기
const rawInput = prompt('태어난 해를 입력해주세요.', '')
const year = Number(rawInput)
const e = year % 12

let result
if (e === 0) { result = '원숭이' }
else if (e === 1) { result = '닭' }
else if (e === 2) { result = '개' }
else if (e === 3) { result = '돼지' }
else if (e === 4) { result = '쥐' }
else if (e === 5) { result = '소' }
else if (e === 6) { result = '호랑이' }
else if (e === 7) { result = '토끼' }
else if (e === 8) { result = '용' }
else if (e === 9) { result = '뱀' }
else if (e === 10) { result = '말' }
else if (e === 11) { result = '양' }
alert(`${year}년에 태어났다면 ${result}띠입니다.`)


//split로 문자열을 잘라 사용하기
const rawInput = prompt('태어난 해를 입력해주세요.', '')
const year = Number(rawInput)
const tti = '원숭이,닭,개,돼지,쥐,소,호랑이,토끼,닭,용,뱀,말,양'.split(',')
alert(`${year}년에 태어났다면 ${tti[year % 12]}띠입니다.`)

 

Review

선정 메일 받고 꺄아..! 했던 게 엊그제 같은데 벌써 2주차..?

혼공 족장님이 스터디 그룹에 1주차 댓글 남겨주신 거 보고 나니 꼼꼼하게 케어해 주셔서 감사했고, 더욱 힘이 났다!

진도를 더 나갈수록 확실히 코드도 길고 복잡해지고, 알던 내용도 확실히 짚고 가는 게 느껴진다.

완주까지 더 힘내보자고!