我有两个对象,它们都有数组“allSessionsParts”和“allSessions”。
仅当 allSession.ID 与 allSessionsParts.SessionID 匹配时,我才尝试让 allSessions -> SessionsParts 拥有 allSessionsParts
到目前为止,这是我的尝试。
const res = allSessions.map(function(sess, i) {
if (sess.ID === allSessionsParts.SessionID) {
return {
sess,
parts: allSessionsParts
};
}
});
更新
解决方案
completeSessions.map(sess => {
if(sess.SessionParts==null){
sess.SessionParts=[]
}
parts.forEach(part => {
if(part.SessionID === sess.ID){
sess.SessionParts.push(part)
}
});
})
最佳答案
您需要迭代数组 allSessions
,对于每个 session ,您需要迭代数组 allSessionParts
以检查是否存在匹配的 SessionId
const validSessions = allSessions.filter(session =>
allSessionParts.some(sessionPart => session.ID === sessionPart.SessionId
);
关于javascript - 需要将两个对象合并在一起,每个对象都有一个匹配 ID 的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56041500/