单独的键和值从对象(Separate keys and values from object)

2019-10-23 02:02发布

我有一个对象,如:

var obj1 = [{ first : 1, second : 2 },
            {third : 3, fourth : 4},
            {fifth : 5, sixth : 6}]; 

我想将分离keysvalues到2个不同的arrays ,使得结果应该是

var labels = [first, second, third, fourth, fifth, sixth];
var values = [1,2,3,4,5,6]; 

我尝试这样做:

var labels = [];
var values = [];
for(var key in obj1[0]){
    labels.push(key);
    values.push(obj1[0][key]);
}

但它会导致

labels = ["first","second"];
values = [1,2];

我知道这是因为我循环只有0度位置。 任何人都可以给我建议的方式来实现预期的输出。

Answer 1:

尝试这样的

 var obj1 = [{ first : 1, second : 2 }, {third : 3, fourth : 4}, {fifth : 5, sixth : 6}]; var key=[]; var value=[]; obj1.forEach(function(item){ for(i in item) { key.push(i); value.push(item[i]); } }); console.log(key); console.log(value); 



Answer 2:

for (var i = 0; i < obj1.length; i++) {
    for (var key in obj1[i]) {
        labels.push(key);
        values.push(obj1[i][key]);
    }
}


文章来源: Separate keys and values from object