본문 바로가기
왕초보 개발일지/오류보고

javascript 숫자비교 false

by n년차초보개발자 2019. 5. 29.
728x90
반응형

- num1은 백단에서 넘겨준 숫자 2.

 

    function test (num1) {

        var num2 = 2;

        if(num1 == 2) {

            console.log("일치합니다");

            return;

        }

        console.log("불일치합니다.");

    }

 

- 당연히 "일치합니다"가 출력될 것이라고 생각했는데 "불일치합니다"가 뜸

 

▷ 원인. num1과 num2의 type을 확인해 본 결과(typeof num1)

    num1의 타입은 string, num2의 type은 number로 나옴.

    num1의 값을 아스키코드값으로 받아와서 생긴 결과라고 판단됨.

 

 해결. num1을 parseInt(num1)을 이용하여 형변환하여 해결함.

 

728x90
반응형

댓글