>  기사  >  웹 프론트엔드  >  JavaScript 평등 판단 공유

JavaScript 평등 판단 공유

小云云
小云云원래의
2018-02-12 15:34:502018검색

JavaScript는 세 가지 다른 값 비교 연산을 제공합니다.

  • 엄격한 동등성"==="

  • 느슨한 동등성"=="

  • Object,is(es6d의 새로운 기능)

이 글은 주로 JavaScript 평등 판단을 여러분과 공유하는데, 여러분에게 도움이 되기를 바랍니다.

엄격한 동일성

삼중 등호는 유형 변환 없이 동일한 비교를 수행합니다(유형이 다른 경우 항상 false를 반환함).
두 값이 모두 숫자 유형이고 둘 다 NaN이 아닌 경우 값이 동일하거나 두 값이 각각 +0과 -0인 경우 두 값은 합동인 것으로 간주됩니다.
  • (1) 다양한 유형의 값 ​​

       如果两个值的类型不同,直接返回false
  • (2) 동일한 클래스의 기본 유형 값

       同一类型的原始类型的值(数值、字符串、布尔值)比较时,值相同就返回true,值不同就返回false。
  • (3) 동일한 클래스의 복합 유형 값

       两个复合类型(对象、数组、函数)的数据比较时,不是比较它们的值是否相等,而是比较它们是否指向同一个对象。
완전한 평등

이중 등호는 유형 변환을 수행합니다
  • (1) 기본 유형 값

       原始类型的数据会转换成数值类型再进行比较。字符串和布尔值都会转换成数值
  • (2) 객체와 기본 유형 값 비교

       对象(这里指广义的对象,包括数值和函数)与原始类型的值比较时,对象转化成原始类型的值,再进行比较
  • (3) 정의되지 않음 및 null

       undefined和null与其他类型的值比较时,结果都为false,它们互相比较时结果为true
  • (4) 다른 유형과 부울 간의 동일성 비교

       会首先把boolean 强制转换成 .toNumber();
Object.is

는 삼중 등호와 동일한 방식으로 동작하지만 NaN과 -0 및 +0을 특별하게 처리합니다.
따라서 마지막 두 개는 동일하지 않습니다.
Object.is(NaN, NaN)는 true입니다
Object.is (+0, -0)는 false입니다
비교 차트

JavaScript 평등 판단 공유

관련 권장 사항:

php 동일성 비교 및 ​​비어 있음, isset, isnull

위 내용은 JavaScript 평등 판단 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.