Safe operator

변수와 연산자 안전 판단 기준

값을 저장한 뒤 바로 계산하지 말고 타입과 변환 가능성을 먼저 확인하면 결과를 예측하기 쉽다.

판단 축확인할 것안전한 선택위험 신호
Scope변수가 어디까지 보이는가블록 안에서 필요한 만큼만 선언전역 상태에 의존
Mutation값이 바뀌어야 하는가const 기본, let 제한의도 없이 재할당
Conversion문자열과 숫자 변환Number(), String() 명시자동 변환 기대
Comparison동등성 판단===, !== 우선==로 서로 다른 타입 비교
Booleantruthy/falsy 판단명시 조건으로 작성빈 문자열, 0, null 혼동

연산자 버그는 계산식보다 그 전에 값의 타입과 변환 규칙을 확인했는지에서 갈린다.