каждый Я пытаюсь найти лучший способ сравнить два массива и добавить новый элемент со значением 0, если между ними есть какая-либо разница.Сначала я получил 2 массива:
var niv = ["FB","Bach","FPSE","FPPE","AA"];
var values = [["H", "FB", 3286.25, 509.75],["H", "Bach", 4587.5, 522.5],
["H", "FPPE", 160, 2624],["H", "AA", 334, 7454],
["M", "FB", 3803.75, 1743.25],["M", "Bach", 7856.5, 709.5],
["M", "FPPE", 799, 3785],["M", "AA", 1055, 11718,2],["N", "FB", 45, 0.0, 0.0]];
Это плохой пример того, что я пытаюсь сделать:
for (var i = 0; i < data.length; i++) {
for (var j = 0; j < values.length; j++) {
if (data[i][0] == values[j][0] &&
(values[i][1] == "FB" || values[i][1] == "Bach" ||
values[i][1] == "FPSE" || values[i][1] == "FPPE" || values[i][1] == "AA")) {
data[i].push(values[j][2],values[j][3])
} else {
data[i].push(0,0)
}
}
}
Все, что я хочу получить, этоэто:
[["H", "FB", 3286.25, 509.75],["H", "Bach", 4587.5, 522.5],
["H", "FPSE", 0.0, 0.0],["H", "FPPE", 160, 2624],
["H", "AA", 334, 7454],["M", "FB", 3803.75, 1743.25],["M", "Bach", 7856.5, 709.5],
["M", "FPSE", 0.0, 0.0],["M", "FPPE", 799, 3785],
["M", "AA", 1055, 11718,2],["N", "FB", 45, 0.0],["N", "Bach", 0.0, 0.0],
["N", "FPSE", 0.0, 0.0],["N", "FPPE", 0.0, 0.0],["N", "AA", 0.0, 0.0]];