我在javascript(D3)中有一个对象数组,需要删除另一个对象属性中存在特定属性的每个对象,即左外连接。
(来源: tazindeed.co.uk) 我已经用两个循环自己完成了这个过程,但速度相当慢。而且我不知道如何加快速度。
(来源: tazindeed.co.uk) 我已经用两个循环自己完成了这个过程,但速度相当慢。而且我不知道如何加快速度。
for (var i = 0; i < data1.length; i++) {
for (var j = 0; j < data2.length; j++) {
if (data2[j].attr3 == data1[i].attr4) {
data2.splice(j,1);
}
}
}
data1的长度约为2k,data2的长度约为10k
我知道这个问题大致上已经在这里被问过,但是已经过去了将近2年,而且解决方案使用了外部库。
我只是好奇是否有更好的方法可以使用javascript(或者jQuery或D3,我已经在使用)
谢谢你的帮助!
array.some
。附加参考:.includes()
与.some()
的区别。 - Gangula