자바스크립트 조건부연산자 짧은조건문

박은정·2021년 7월 16일
0
post-thumbnail

조건부 연산자

기본형태

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

삼항 연산자 : 자바스크립트에서 항을 3개 가지는 연산자

const input = prompt('숫자를 입력해주세요.', '')
const number = Number(input)

const result = (number >= 0) ? '0 이사의 숫자입니다.' : '0보다 작은 숫자입니다.'
alert(result)

실행결과 1
숫자를 입력해주세요
입력> 24 Enter
0 이상의 숫자입니다.

실행결과 2
숫자를 입력해주세요
입력> -14 Enter
0보다 작은 숫자입니다.

짧은 조건문

논리 연산자의 특성으로 조건문으로 사용

이전에는 짧은 조건문을 이용한 할당을 많이 사용했지만
다른 조건문 코드와 비교했을 때 이해하기 어려워서 사용하지 말자는 개발자들도 많다

논리합 연산자를 사용한 짧은 조건문 ||

논리합 연산자를 사용한 표현식은 뒤에 어떠한 값이 들어가도 항상 참이다
자바스크립트는 참true 이 확실할 때 추가 연산을 진행하지 않아서
논리합 연산자의 좌변이 참이면 우변을 실행하지 않는다

기본형태

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

좌변이 참이므로 우변을 무시한다

> true || console.log('실행될까요?')
// true

좌변이 거짓이므로 우변이 참인지 거짓인지 검사한다
우변이 실행되어 '실행될까요?' 라는 문자열을 출력한다

> false || console.log('실행될까요?')
//  실행될까요? (문자열출력)
// undefined

if else 조건문 & || 짧은 조건문 예제 : 짝수 홀수 구분

|| 짧은조건문

(끝자리 === "0" || "2" || "4" || "6" || "8") 과 같이 코드르 작성하면 실행되지 않는다
|| 연산자는 예제코드와 같이 작성해야한다

// 입력이 문자열이므로 다음과 같은 코드를 사용할 수 있다
const 입력 = prompt('정수를 입력해주세요.', '')
const 끝자리 = 입력[입력.length - 1]

// 끝자리 비교
if (끝자리 === "0" ||
    끝자리 === "2" ||
    끝자리 === "4" ||
    끝자리 === "6" ||
    끝자리 === "8") {
  // || 조건식이 참인 경우 실행
  alert('${입력}은 짝수입니다')
} else {
  alert('${입력}은 홀수입니다.')
}

실행결과 1
정수를 입력해주세요.
입력> 17 Enter
17은 홀수입니다.

실행결과 2
정수를 입력해주세요.
입력> 38 Enter
38은 짝수입니다.

논리곱 연산자를 사용한 짧은 조건문 &&

논리곱 연산자 : 양변이 모두 참일 때만 참 이므로 false && OOO 표현식은 항상 거짓이다
따라서 논리곱 연산자는 좌변이 거짓이면 우변을 실행하지 않는다

false && OOO
결과가 거짓인 불 표현식 && 불 표현식이 참일 때 실행할 문장
profile
새로운 것을 도전하고 노력한다

0개의 댓글