【Javascript】求兩個物件的交集、差集
阿新 • • 發佈:2018-12-12
//dataA,dataB樣例:
[{
id: 1,
name: 'zw'
}]
/**
* 獲取兩個物件的差集
* @param dataA:大物件
* @param dataB:小物件
* /
function getDiffrenceSetData (dataA, dataB) {
for (let i = dataA.length - 1; i >= 0; i--) {
for (let j = 0; j < dataB.length; j++) {
if (dataA[i].id === dataB[j].id) {
dataA.splice(i, 1);
break;
}
}
}
return dataA;
}
/**
* 獲取兩個物件的交集
* @param dataA:大物件
* @param dataB:小物件
* /
function getIntersectionData (dataA, dataB) {
outLoop: for (let i = dataA.length - 1; i >= 0; i--) {
for (let j = 0; j < dataB.length; j++) {
if (dataA[i].id === dataB[j].id) {
continue outLoop;
}
}
dataA.splice(i, 1);
}
return dataA;
}