«Равенство JavaScript» относится к концепции сравнения значений равенства в JavaScript. Существует несколько методов проверки равенства в JavaScript. Вот некоторые часто используемые методы:
- Строгое равенство (===): оператор строгого равенства проверяет, идентичны ли значения с обеих сторон оператора по типу и значению.
Пример:
console.log(5 === 5); // true
console.log('hello' === 'world'); // false
console.log(5 === '5'); // false
- Свободное равенство (==): оператор свободного равенства проверяет, равны ли значения с обеих сторон оператора, при необходимости выполняя приведение типов.
Пример:
console.log(5 == 5); // true
console.log('hello' == 'world'); // false
console.log(5 == '5'); // true
- Равенство объектов: при сравнении объектов JavaScript проверяет, ссылаются ли они на один и тот же объект в памяти, а не сравнивает их свойства.
Пример:
const obj1 = { name: 'John' };
const obj2 = { name: 'John' };
console.log(obj1 === obj2); // false
const obj3 = obj1;
console.log(obj1 === obj3); // true
- Object.is(): метод
Object.is()
сравнивает два значения на предмет равенства, аналогично оператору строгого равенства, но с некоторыми отличиями.
Пример:
console.log(Object.is(5, 5)); // true
console.log(Object.is('hello', 'world')); // false
console.log(Object.is(5, '5')); // false
- Равенство массивов. Массивы в JavaScript являются объектами, поэтому проверки на равенство массивов основаны на равенстве ссылок.
Пример:
const arr1 = [1, 2, 3];
const arr2 = [1, 2, 3];
console.log(arr1 === arr2); // false
const arr3 = arr1;
console.log(arr1 === arr3); // true