以下是一个比较两个嵌套对象数组的示例代码:
// 定义两个嵌套对象数组
const array1 = [
{ id: 1, name: 'Alice', age: 20 },
{ id: 2, name: 'Bob', age: 25 },
{ id: 3, name: 'Charlie', age: 30 }
];
const array2 = [
{ id: 1, name: 'Alice', age: 20 },
{ id: 2, name: 'Bob', age: 25 },
{ id: 3, name: 'Charlie', age: 30 }
];
// 比较两个嵌套对象数组
function compareArrays(arr1, arr2) {
// 首先比较数组的长度
if (arr1.length !== arr2.length) {
return false;
}
// 遍历数组元素
for (let i = 0; i < arr1.length; i++) {
// 比较对象的属性
for (let key in arr1[i]) {
if (arr1[i][key] !== arr2[i][key]) {
return false;
}
}
}
return true;
}
// 调用函数进行比较
const result = compareArrays(array1, array2);
console.log(result); // 输出: true
上述代码中,compareArrays
函数用于比较两个嵌套对象数组。首先,它比较两个数组的长度是否相等,如果不相等,则直接返回false
。然后,它使用嵌套的for
循环遍历数组元素,并比较它们的属性值是否相等。如果有任何一个属性值不相等,则返回false
。如果遍历结束后没有返回false
,则说明两个数组是相等的,返回true
。
在示例中,array1
和array2
的内容完全相同,因此调用compareArrays(array1, array2)
返回true
。