면접

[면접] 동등연산자("==")와 일치 연산자("===")의 차이 이해하기

pizzaYami 2024. 4. 12.

https://blog.vietnamlife.info/%EC%97%B0%EC%82%B0%EC%9E%90-strict-equality-%EC%82%AC%EC%9A%A9-%EC%9D%B4%EC%9C%A0-%EB%B0%8F-%EC%98%88%EC%A0%9C/

0. 개요 


평소에 코드를 작성할 때 "==="만을 사용하고 "=="는 타입을 비교하지 않고 값만 비교한다고만 알고 있습니다. 이러한 지식이 정확한지 블로그를 작성해 보았습니다.

 

1.  동등연산자 ("=="연산자)


"==" 연산자는 동등 연산자로서, 두 변수의 값이 같은지 비교합니다. 하지만, 비교하기 전에 타입 변환을 수행하여 두 변수의 타입을 일치시킵니다.

 

숫자 '5'와 문자열 '5'를 비교할 때, 문자열 '5'는 숫자 5로 자동 변환된 후 값이 비교됩니다.

console.log(5 == '5');  // true
console.log(1 == true); // true

 

2. 일치연산자 ("=="연산자)


"===" 연산자는 일치 연산자로서, 두 변수의 값과 타입이 모두 같은지 비교합니다. 타입 변환 없이 직접 비교하므로, 보다 엄격한 비교가 가능합니다.

 

숫자 '5'와 문자열 '5'는 타입이 다르기 때문에, 일치하지 않습니다.

console.log(5 === '5');  // false
console.log(1 === true); // false

 

 

3. 동등연산자와 일치연산자의 차이점


"=="와 "==="의 주된 차이는 타입 변환의 유무입니다. 일반적으로는 "==="을 사용하여 값과 타입의 일치 여부를 엄격하게 확인하는 것이 좋습니다. 하지만, 상황에 따라 유연하게 "=="을 사용할 필요도 있습니다. 프론트엔드 개발자로서 이 두 연산자의 차이를 명확히 이해하고 적절히 사용하는 것은 중요한 기술입니다.

 

4. 면접 답변


동등연산자는 두 변수의 이 같은지 비교를 합니다. 일치연산자는 두 변수의 값과 타입이 같은지 비교를 합니다. 일반적으로 일치연산자를 사용해서 엄격하게 확인하는 것이 좋습니다. 일반적으로는 안전하고 예측가능한 일치연산자를 사용합니다.

댓글