728x90
eqeq가 무엇인가? 라고 생각하고 이 글을 클릭한 사람들이 꽤나 있을것이라고 생각된다.
eq 는 equality(=) 즉, 동등 연산자를 말한다.
javascript에서는 == 와 ===가 있다.
==의 경우 type casting의 기능을 포함하고 있기 때문에 비교연산자로 사용하기에 위험한 면이 있다.
따라서 strict equality(===)를 이용해서 값을 비교하는 것이 더욱 안전한 코드라고 볼 수 있다.
간혹, 이를 인지하고 알고있는 상태에서도 귀찮음 혹은 자신의 역량을 뽐내기 위해서 ==를 사용하는 사람들이 있는데,
이를 본인 혼자하는 토이프로젝트에서는 해도 문제가 없지만 다른 팀원들과 협업하는 상황에서 사용한다면 신뢰를 주지 못하는 팀원이 될 것이다.
따라서 만약 어떤 값을 비교하는데 분명 숫자끼리 비교하는 것이지만 ajax 통신이라던지를 통하여 문자열의 형태로 받아와서 ==만으로 비교할 수 없는 상황이라면 명시적으로 타입을 변환하여 비교하는 방식의 코드를 짜는 것이 바람직하다.
또한 ESLint 등의 보조장치들을 이용하여 ==를 사용하지 못하도록 막을 수도 있다.
728x90
'Front-end > js-clean coding' 카테고리의 다른 글
제 41강 Shorthand Properties, Concise Method : 쉽게 작성하기 (0) | 2023.02.20 |
---|---|
제 20강 값식문 (0) | 2023.01.06 |
제 14강 isNaN (0) | 2022.02.05 |
제 13강 형변환 주의하기 (0) | 2022.02.05 |