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. 면접 답변
동등연산자는 두 변수의 값이 같은지 비교를 합니다. 일치연산자는 두 변수의 값과 타입이 같은지 비교를 합니다. 일반적으로 일치연산자를 사용해서 엄격하게 확인하는 것이 좋습니다. 일반적으로는 안전하고 예측가능한 일치연산자를 사용합니다.
'면접' 카테고리의 다른 글
[면접] 호이스팅(Hoistin)에 대해 설명해보세요. (0) | 2024.04.11 |
---|---|
[면접] 브라우저 렌더링 원리에 대해서 설명해보세요. (0) | 2024.04.10 |
[면접] async/await에 대해 설명해보세요. + promise란 (0) | 2024.04.09 |
[면접] CSRF나 XSS 공격을 막는 방법은? (0) | 2024.04.06 |
[면접] API, REST, REST API, RESTful API 차이점은 무엇인가 (0) | 2024.04.05 |
댓글