ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 논리 연산자 ||
    일차 TIL 2023. 5. 26. 22:02

    문제

    function order(item, quantity, price) {
        // item, quantity, price 중 하나라도 입력이 되어 있지 않으면
        // '주문 정보를 모두 입력해주세요' 를 리턴합니다.
        // quantity 수량이 0이하면
        // '수량은 1개 이상 입력해주세요' 를 리턴합니다.
        // 위 두 가지 경우만 아닌 경우에만 아래와 같이 주문 완료 메시지를 출력합니다.
      // 이 부분에 코드를 작성해 보세요.
    }

    console.log(order('아이폰 12', 2, 1200000));
    // 출력 결과: '주문이 완료되었습니다. 아이폰 12 2개를 2400000원에 구매하셨습니다.'

    console.log(order('맥북 프로', -1, 2500000));
    // 출력 결과: '수량은 1개 이상 입력해주세요'

    console.log(order('아이패드 에어', 1, null));
    // 출력 결과: '주문 정보를 모두 입력해주세요'

    내가 시도한것

    function order(item, quantity, price) {
        if (item===true || quantity===true|| price===true){
            return "주문 정보를 모두 입력해주세요"
        }
        else if (quantity <= 0){
            return "수량은 1개 이상 입력해주세요"    
        }
        else {
            const mony = quantity * price
            return `주문이 완료되었습니다. ${item} ${quantity}개를 ${mony}원에 구매하셨습니다.`
        }
    }

    주문이 완료되었습니다. 아이폰 12 2개를 2400000원에 구매하셨습니다.
    수량은 1개 이상 입력해주세요
    주문이 완료되었습니다. 아이패드 에어 1개를 0원에 구매하셨습니다.

     

    3번째 결과값이 틀리게 나왔다

     

    일단 값이 오류가 생기진 않는 것을 보아 || 논리합 연산자에서 문제가 생긴 듯하다.

     

    item,quantity,price 값중 하나라도 false인경우에 retuern값을 돌려주고싶었다.

     

    if (item !==true || quantity !==true|| price !==true)

    이런식으로 바꿔 보았는데

    역시 

    주문 정보를 모두 입력해주세요
    주문 정보를 모두 입력해주세요
    주문 정보를 모두 입력해주세요

    모든 답이 틀리게 나왔다.

     

    일단 저 구문을 3개의 값중 하나라도 틀릴경우 return하는 것은 맞는 것이다.

    방법을 찾던중 논리부정 연산자 (!)를 찾아내서 사용해보았다

    논리부정 연산자 : 값을 반대로 바꾼다

    if (!item===true || !quantity===true|| !price===true)

    주문이 완료되었습니다. 아이폰 12 2개를 2400000원에 구매하셨습니다.
    수량은 1개 이상 입력해주세요
    주문 정보를 모두 입력해주세요

     

    느낀점

    내가 해야할 것을 확실히 아는 것이 가장중요한건 맞는 것같다.

    그 다음으로 중요한 것은 내가 모르더라도 그 방법을 찾아 낼 수 있는 것인것같다.

    코딩을 많이 해보진 않았지만, 하면 할수록 느끼는 것이

    내가 모르는 것보다 모르는 것, 필요한 것을 스스로 찾아내서 해결하는 것이 매우 중요한 것 같다.

    '일차 TIL' 카테고리의 다른 글

    [자바스크립트] Document.querySelector()  (0) 2023.05.29
    [자바스크립트]Boolean 의 필요성  (2) 2023.05.28
    index (인덱스)란?  (0) 2023.05.23
    23-05-15 ~ 23-05-19 프로젝트 KPTF  (0) 2023.05.19
    CRUD란?  (0) 2023.05.19
Designed by Tistory.