이 글은 자바스크립트에서 동등(==)의 사용법에 대한 설명을 제공합니다. 이는 특정 참고 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
마법은 어디에 있나요
최근 제가 맡은 프로젝트가 프론트엔드 관련이라 js를 작성해보았습니다. 필드의 null이 아닌 값을 처리할 때 tagert_value == ''를 사용하여 판단했는데, 일부 사용자는 target_value = 0일 때 null이 아닌 값 확인에 실패했다고 보고했습니다. 문제를 디버깅할 때 콘솔 상태 표시줄에서 다음을 시도했습니다.
> 0 == '' < true
문제가 어디에 있는지 알 것 같습니다. . . ==의 판단 논리를 명확하게 이해하지 못해서 공식 문서를 찾아서 살펴볼 계획입니다.
Equality(==, !=)
1. 문자열, 숫자 또는 부울로 변환해 보세요.
2、NaN은 자신을 포함한 모든 것과 동일하지 않습니다.
3、음수 0은 양수 0과 같습니다.#🎜🎜 #
4.null은 null 및 정의되지 않음과 같습니다.5.값 숫자상으로 동일한 문자열이면 동일한 것으로 간주됩니다. 동일한 숫자, 동일한 객체, 동일한 부울 값 또는 (만약 다른 유형) 이러한 상황 중 하나로 강제될 수 있습니다.6、다른 모든 비교는 동일하지 않은 것으로 간주됩니다. 이렇게 보면 기본적으로는 명확합니다. 0 == ''를 비교하면 먼저 유형이 변경되었습니다. 그러면 누가 변환되었는지 살펴보겠습니다.
> Number('') < 0 > var b= '' > b.toString() <'0'int == string일 때 문자열은 먼저 해당 int 값으로 변환된 후 비교됩니다. 피하는 방법은? 다음은 ===(엄격한 평등)에 대한 강력한 소개입니다. 엄밀히 말하면 매우 강력해 보입니다. 공식 이름은
Identity(===. !==)입니다. 아이덴티티는 긴장감 넘치는 범죄 해결 장르의 느낌을 줍니다. 공식 소개 보기:
이 연산자는
유형 변환이 수행되지 않는 것을 제외하고 항등 연산자가 수행되며 유형은 다음과 같아야 합니다.
동일해야 동일하다고 간주됩니다.
위 내용은 JavaScript의 같음(==) 사용법 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!