Встречается на собеседованиях • сегодня
Как сравнить объекты
В JavaScript объекты сравниваются по ссылке, а не по содержимому. Даже если два объекта имеют одинаковые свойства и значения, они не равны, если это разные экземпляры.
Простое сравнение:
javascript
const obj1 = { a: 1 };
const obj2 = { a: 1 };
console.log(obj1 === obj2); // falseГлубокое сравнение:
- Для простых объектов можно использовать
JSON.stringify():
javascript
console.log(JSON.stringify(obj1) === JSON.stringify(obj2)); // true- Для сложных случаев (вложенные объекты, функции, undefined) лучше использовать библиотеки типа Lodash (
_.isEqual()).
Ручная реализация:
javascript
function deepEqual(a, b) {
if (a === b) return true;
if (typeof a !== 'object' || typeof b !== 'object') return false;
const keysA = Object.keys(a), keysB = Object.keys(b);
if (keysA.length !== keysB.length) return false;
return keysA.every(key => deepEqual(a[key], b[key]));
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы