Javascript id为'时2个对象数组的差异;它们是不一样的
我有两个数组,Javascript id为'时2个对象数组的差异;它们是不一样的,javascript,arrays,Javascript,Arrays,我有两个数组,arr1从数据库中检索,并且arr2作为请求主体发送。我试图获取两个数组之间的差异,但是我得到了一个错误,因为来自db的id不是字符串。如何在数组中字符串化id,以便正确过滤 arr1 = [ { id: 125ddgs34, name: ‘dgsgs’ }, { id: 356kfjj1235, name: ‘adhkdh’ }, { id: 87hjsgffjj, name: ‘fshjyy’ }, ] arr2 = [ { id: ‘125
arr1
从数据库中检索,并且arr2
作为请求主体发送。我试图获取两个数组之间的差异,但是我得到了一个错误,因为来自db的id
不是字符串。如何在数组中字符串化id
,以便正确过滤
arr1 = [
{ id: 125ddgs34, name: ‘dgsgs’ },
{ id: 356kfjj1235, name: ‘adhkdh’ },
{ id: 87hjsgffjj, name: ‘fshjyy’ },
]
arr2 = [
{ id: ‘125ddgs34’, name: ‘dgsgs’ },
{ id: ‘356kfjj1235’, name: ‘adhkdh’ },
]
let difference = arr1.filter(x => !arr2.some(x2 => {
console.log(x.id, "=========")
console.log((x2.id, "======"))
}));
如果您正在使用“mongodb”,请尝试以下操作:
arr1 = [
{ id: ObjectId("507f1f77bcf86cd799439011"), name: ‘dgsgs’ },
{ id: ObjectId("507f1f77bcf86cd799439012"), name: ‘adhkdh’ },
{ id: ObjectId("507f1f77bcf86cd799439013"), name: ‘fshjyy’ },
]
arr1
是一个语法错误。你是怎么从数据库里查出来的?是的。这是来自mongo db@MarkMeyer125ddgs34
的ObjectId,不是有效的javascript值。我想知道这是否有用@Hopez:@MarkMeyer非常有用。感谢如我的问题中所述从mongo检索数据。我需要自动将其设置为字符串