我需要将下面提到的数组中的元素拆分为2个独立的数组:
数据和标签:
使用下面的示例如下所示:
数据 [9,23,1,6]
标签: ['service-1','service-2','service-3','service-4']
Array[16]
. 0: Object
. data: 9
. labels: "service-1"
. __proto__: Object
. 1: Object
. data: 23
. labels: "service-2"
. __proto__: Object
. 2: Object
. data: 1
. labels: "service-3"
. __proto__: Object
. 3: Object
. data: 6
. labels: "service-4"
. __proto__: Object
我正在努力保持这种简单,因为我尝试了几个不起作用的东西,包括这篇文章中的参考:add array elements to other,
答案 0 :(得分:3)
试试这个:
var dataLabels = [
{data: 9, label: "service-1"},
{data: 23, label: "service-2"},
{data: 1, label: "service-3"},
{data: 6, label: "service-4"}
];
var data = [];
var labels = [];
dataLabels.forEach(function(element) {
data.push(element.data);
labels.push(element.label);
});
答案 1 :(得分:2)
假设您的数组有一个JS对象表示法,我认为这应该有效:
var data = [];
var labels = [];
for (var i= 0;i<16; i++){
data[i] = array[i].data;
labels[i] = array[i].labels;
}
答案 2 :(得分:2)
这应该可以解决问题。虽然也许循环就足够了。
var dataLabels = [
{
data: 9,
labels: "service-1"
}, {
data: 23,
labels: "service-2"
}
];
var data = dataLabels.map(function(element) {
return element.data;
});
var labels = dataLabels.map(function(element) {
return element.labels;
});