В массиве значений
var legends =['some','key', 'value'];
график с соответствующими значениями obj;
var graph = {
orgid: ['123', '123556', '456', '345', '2345'],
some: [1500, 1500, 1500, 1500, 1500],
key: [900, 900, 900, 900, 900],
value: [1072, 1373, 946, 715, 276]
};
Я хотел извлечь график только с ключевыми значениями, упомянутыми в массиве, чтобывставлен в другой массив
Я выполнил код, но он работает только в том случае, если порядок клавиш одинаков в порядке, указанном в obj
es5 way
var grphFilter = [];
var countRaw = 0;
for (var key in graph) {
if (key === legends[count] ) {
grphFilter.push(graph[key]);
count++;
}
}
es6 way
let grphFilter = [];
let count = 0;
const result = Object.entries(graph).forEach(function([key, value]) {
if (key === legends[count]) {
grphFilter.push(value);
count++
}
})
, но это не будет работать для клавиш, которые не в порядке, как.
var legendsNotOrder =['key', 'some', 'value'];
независимо от порядка значения в массиве легенд, конечным результатом должен быть результат, будь то legends
или legendsNotOrder
Конечный результат
var graphfiltered = [
[1500, 1500, 1500, 1500, 1500],
[900, 900, 900, 900, 900],
[1072, 1373, 946, 715, 276]
];