Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从对象中分离键和值_Javascript_Arrays_Object - Fatal编程技术网

Javascript 从对象中分离键和值

Javascript 从对象中分离键和值,javascript,arrays,object,Javascript,Arrays,Object,我有一个物体像: var obj1 = [{ first : 1, second : 2 }, {third : 3, fourth : 4}, {fifth : 5, sixth : 6}]; 我想将键和值分成两个不同的数组,这样结果应该是 var labels = [first, second, third, fourth, fifth, sixth]; var values = [1,2,3,4,5,6]; 我试过这个: var la

我有一个物体像:

var obj1 = [{ first : 1, second : 2 },
            {third : 3, fourth : 4},
            {fifth : 5, sixth : 6}]; 
我想将
分成两个不同的
数组
,这样结果应该是

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
索引位置。有人能给我建议一种实现预期输出的方法吗。

像这样试试

var obj1=[{first:1,second:2},
{第三:3,第四:4},
{fifth:5,sixth:6}];
var键=[];
var值=[];
obj1.forEach(功能(项目){
第(i)项
{
按键(i);
价值推送(第[i]项);
}
});
控制台日志(键);
console.log(值)像这样试试

var obj1=[{first:1,second:2},
{第三:3,第四:4},
{fifth:5,sixth:6}];
var键=[];
var值=[];
obj1.forEach(功能(项目){
第(i)项
{
按键(i);
价值推送(第[i]项);
}
});
控制台日志(键);
console.log(值)
用于(变量i=0;i
用于(变量i=0;i
jquery可以使用吗?@pc shooter我在想一个纯javascript解决方案。但是,如果jquery提供了一个更好的解决方案,那么使用jquery就可以了。jquery是否可以使用?@pc shooter我在想一个纯javascript解决方案。但是如果jquery提供了一个更好的解决方案,那么使用jquery就可以了。没有办法避免2个for循环吗?你的一个是数组对象。如果你想从你的数据列表中得到所有的对象,你必须迭代整个对象。没有办法避免2个for循环?你的一个是数组对象。如果要从数据列表中获取所有对象,必须迭代整个对象
for (var i = 0; i < obj1.length; i++) {
    for (var key in obj1[i]) {
        labels.push(key);
        values.push(obj1[i][key]);
    }
}