Метод JavaScript Object.is () проверяет, являются ли два значения одним и тем же значением.
Синтаксис is()
метода:
Object.is(value1, value2)
Этот is()
статический метод вызывается по имени Object
класса.
is () Параметры
is()
Метод принимает в:
- значение1 - первое значение для сравнения.
- значение2 - второе значение для сравнения.
Возвращаемое значение из is ()
- Возвращает значение,
Boolean
указывающее, являются ли два аргумента одним и тем же значением.
Два значения совпадают, если выполняется одно из следующих условий:
- и то и другое
undefined
- и то и другое
null
- оба
true
или обаfalse
- обе строки одинаковой длины с одинаковыми символами в одинаковом порядке
- как один и тот же объект (означает, что оба объекта имеют одинаковую ссылку)
- оба числа и
- оба +0
- оба -0
- и то и другое
NaN
- или оба ненулевые, и оба нет,
NaN
и оба имеют одинаковое значение
Пример: использование Object.is ()
// Objects with the same values console.log(Object.is("JavaScript", "JavaScript")); // true // Objects with different values console.log(Object.is("JavaScript", "javascript")); // false console.log(Object.is((), ())); // false let obj1 = ( a: 1 ); let obj2 = ( a: 1 ); console.log(Object.is(obj1, obj1)); // true console.log(Object.is(obj1, obj2)); // false console.log(Object.is(null, null)); // true // Special Cases console.log(Object.is(0, -0)); // false console.log(Object.is(-0, -0)); // true console.log(Object.is(NaN, 0 / 0)); // true
Вывод
правда ложь ложь правда ложь правда ложь правда правда
Заметки:
==
Оператор применяет различные принуждения к обеим сторонам (если не то же типа) перед проверкой на равенство , аObject.is()
не делает.- В
===
оператор обрабатывает цифровые значения -0 & +0 как равные и лечитNumber.NaN
как не равно ,NaN
аObject.is()
делает противоположное.
Рекомендуемая литература: объект Javascript