Сделать левое внешнее соединение в JavaScriptJquery

Программирование на jquery
Anonymous
Сделать левое внешнее соединение в JavaScript

Сообщение Anonymous »

У меня есть массив объектов в JavaScript (D3), и мне нужно удалить каждый объект, у которого определенный атрибут присутствует в другом атрибуте массива объектов,

т.е. левое внешнее соединение
Изображение

Мне удалось сделать это самому с помощью 2 циклов но это довольно медленно.

И я не знаю, как сделать это быстрее.

Код: Выделить всё

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.length~2k и data2.length~10k

Я знаю, что здесь об этом спрашивали, но прошло уже почти 2 года, и в решениях используются внешние библиотеки.

Мне просто интересно узнать, есть ли лучший метод с JavaScript (или jQuery или D3, который я уже использую)

Подробнее здесь: https://stackoverflow.com/questions/288 ... javascript

Вернуться в «Jquery»