js两个数组,对比是否相同,判断是否有相同的id的数据,每个数据中的contentText是否相同
时间: 2024-09-13 09:15:26 浏览: 53
在JavaScript中,你可以通过多种方式比较两个数组是否相同以及它们包含的元素是否有相同的ID并且内容文本(contentText)也相等。这里提供一种基于循环遍历和条件检查的方法:
```javascript
function arraysAreEqualAndContentMatch(arr1, arr2) {
// 检查数组长度是否相同
if (arr1.length !== arr2.length) return false;
// 遍历第一个数组
for (let i = 0; i < arr1.length; i++) {
const item1 = arr1[i];
const matchingItem2 = arr2.find(item => item.id === item1.id && item.contentText === item1.contentText);
// 如果找不到匹配项或者找到的item.contentText不一致,则返回false
if (!matchingItem2 || matchingItem2.contentText !== item1.contentText) {
return false;
}
}
// 如果所有元素都一一对应且contentText相同,则返回true
return true;
}
// 示例用法
const array1 = [{ id: 1, contentText: "example1" }, { id: 2, contentText: "example2" }];
const array2 = [{ id: 1, contentText: "example1" }, { id: 2, contentText: "example2" }];
console.log(arraysAreEqualAndContentMatch(array1, array2)); // 输出:true
```
阅读全文