#2 TIL -JS 숫자범위의 차이

X's Dev·2024년 4월 26일
0

TIL

목록 보기
2/38

JS

JS환경에서 숫자 범위 지정은 다른 의미를 가진다.

JS 코드를 작성할 때 변수 num1의 범위에 대한 코드를 다음 두가지를 작성했을 때 어떤 차이가 있을까?

#1ST CASE

function solution(num){
var answer = 0;
if(0 <= num1 <= 10000){
...
}

#2ST CASE

function solution(num1) {
var answer;
if (0 <= num1 && num1 <= 10000){
...
}

1ST CASE일 경우 JS환경에서 0<= num1 <= 10000 같은 표현은 우리 의도대로 작동하지 않는다.

우리의 의도는 변수 num1의 값에 대해 범위를 지정하여, 그 범위 내에서 변수값을 입력하여 if 문이든 for문이든 코드를 실행하려는것 이겠지만,

0<= num1에서 'true' 혹은 'false'를 반환하고, 그 결과가 true(1) 또는 false(0)으로 변환되어 그 값은 10000과 비교되기 때문에 논리적인 문제와 표현식에 오류가 발생하는것이다.

올바른 표현은 2ST CASE처럼 각 변수에 대해 개별적으로 범위를 검사하는 코드를 작성하는 것이다.

(0 <= num1 && num1 <= 10000)

profile
성장 기록하기

0개의 댓글