NATIVE

settings_applicationsObject

NATIVE

Editing
  • account_tree
  • bug_report

Booleanresultis(AnyTypevalue1, AnyTypevalue2)

매개 변수로 주어진 두 값이 같은 값인지 확인한다. '=='와 '===' 연산자의 결과가 다를 수 있으므로 아래의 기술 문서를 참조한다.

구문

형식
Object.is(value1, value2)

매개 변수

AnyTypevalue1필수
비교할 첫 번째 값
AnyTypevalue2필수
비교할 두 번째 값

반환

Booleanresult

두 개의 매개 변수의 값이 같은 경우에는 true, 그렇지 않은 경우에는 false를 반환한다.

기술 문서

Object.is() 메소드는 인수로 주어진 두 개의 값이 같은 값인지 체크한다. 다음 중 하나를 만족하면 두 값은 같은 것으로 처리한다.

  • 비교되는 모든 값이 undefined 일 경우
  • 비교되는 모든 값이 null 일 경우
  • 비교되는 모든 값이  true 또는 false일 경우
  • 비교되는 모든 값이 같은 길이에 같은 문자일 경우
  • 비교되는 모든 값이 같은 객체일 경우
  • 비교되는 모든 값이 숫자이며
    • 둘 다 +0
    • 둘 다 -0
    • 둘 다 NaN
    • 둘 다 0이나 NaN이 아니고 같은 값을 가질 경우

이러한 결과는 == 연산자에 따른 같음 결과와 다를 수도 있으므로 주의하도록 한다. == 연산자는 같은지를 테스트하기 전에 양쪽에 다양한 강제를 적용(예: "" == false)하지만 Object.is()는 비교되는 어느 값도 강제되지 않는다.

이는 === 연산자에 따른 같음과도 같지 않다. 예를 들어서 ===(== 동일) 연산자는 -0+0을 같게 NaN은 같지 않다고 판단한다.

버전 명세

ECMAScript 2024(15th Edition)
#sec-object.is

지원 웹브라우저