삼항 연산자 ,논리 연산자

lovjgb·2022년 7월 27일

JavaScript

목록 보기
1/1

삼항 조건 연산자

condition ? exprIfTrue : exprIfFalse 
조건이       참이면         거짓이면 이것을 표현해줘. 

condition (조건문)
조건문으로 들어갈 표현식

exprIfTrue (참일 때 실행할 식)
condition이 Truthy일 때 실행되는 표현식입니다. (true일 때 치환될 값입니다).

exprIfFalse (거짓일 때 실행할 식)
condition이 falsy일 때 실행되는 표현식입니다. (false일 때 치환될 값입니다).

false외에도 nul,NaN, 0, 비어있는 문자 값 (""), 그리고 undefined으로 조건문에 false 값으로 사용 가능 합니다. 이 값들이 조건문으로 사용된다면 exprIfFalse이 결과로 나오게 됩니다.

논리 연산자

  • &&
    • And
    • a, b 모두 true인 경우 true
  • ||
    • or
    • a, b 의 어느 하나가 true인 경우 true
  • !
    • Not
    • a가 true가 아닌 경우 true
let isOnSale = true
let isDiscountItem = true

console.log(isOnSale && isDiscountItem) // true && true 이므로 true
console.log(isOnSale || isDiscountItem) // true || true 이므로 true

isOnSale = false
console.log(isOnSale && isDiscountItem) // false && true 이므로 false
console.log(isOnSale || isDiscountItem) // false || true 이므로 true

isDiscountItem = false
console.log(isOnSale && isDiscountItem) // false && false 이므로 false
console.log(isOnSale || isDiscountItem) // false || false 이므로 false

console.log(!isOnSale) // !false 이므로 true

응용

  • 남자 이고, 이름이 Mike이거나 성인 이면 통과!
const gender = 'F';
const name = 'jane';
const isAdult = true;

if(gender === 'M' && name === 'Mike' || isAdult){
  console.log('통과')
} else {
  console.log("돌아가")
}
//통과
//&&(and)는 ||(or)보다 우선이 된다. 즉, 마지막 부분의 조건 값이 true면 true가 나오는 것이다.

//맞는 코드
if(gender === 'M' && (name === 'Mike' || isAdult)){
  console.log('통과')
} else {
  console.log("돌아가")
}
//뒤에를 ()로 묶어줌으로써 genter가 'M'이고 이름이 Mike이거나 성인 이면 통과! 라는 식이 완성되는 것이다.

반복문 안에서의 break, continue

  • break : 멈추고 빠져나옴
  • continue : 멈추고 다음 반복으로 진행(for문에서 해continue를 만나면 그 다음 i++를 진행한다.)
profile
lovjgb

0개의 댓글