Не проходит такое решение, интересно почему...
export const isIdentical = (obj1, obj2) => {
if (JSON.stringify(obj1) === JSON.stringify(obj2)) {
console.log('объекты идентичны')
return true
}
let arr1 = [];
let arr2 = [];
// надо передать 2 обьекта в масивы
// сравнить длину этих массивов (количество ключей внтури них)
//брать 1 элемент массива и перебером искать такой же в другом массиве
for (let keys in obj1) {
arr1.push(obj1[keys]);
}
for (let keys in obj2) {
arr2.push(obj2[keys]);
}
let number = 0;
if (arr1.length === arr2.length) {
for (let i = 0; i < arr1.length; i++) {
if (arr1.includes(arr2[i]) === true) {
number++;
} else {
console.log('Не совпадает параметр ' + arr2[i])
return false;
}
}
} else {
console.log('длина разная')
return false
}
console.log('Все ключи равны')
return number === arr1.length;
}
Задачу решил другим циклом ниже
, но суть таже проверяется всё тоже самое, или я ошибаюсь =/
export const isIdentical = (obj1, obj2) => {
if (JSON.stringify(obj1) === JSON.stringify(obj2)) {
console.log('объекты идентичны')
return true
}
let arr1 = [];
let arr2 = [];
// надо передать 2 обьекта в масивы
// сравнить длину этих массивов (количество ключей внтури них)
//брать 1 элемент массива и перебером искать такой же в другом массиве
for (let keys in obj1) {
arr1.push(keys);
}
for (let keys in obj2) {
arr2.push(keys);
}
if (arr1.length !== arr2.length) {
return false
}
if (arr1.length === arr2.length) {
for (let i = 0; i < arr1.length; i++) {
const arr = arr1[i];
if (obj1[arr] !== obj2[arr]) {
return false;
}
}
return true;
}
}