相关疑难解决方法(0)

从对象数组中,将属性的值提取为数组

我有JavaScript对象数组,具有以下结构:

objArray = [ { foo: 1, bar: 2}, { foo: 3, bar: 4}, { foo: 5, bar: 6} ];
Run Code Online (Sandbox Code Playgroud)

我想提取一个包含key值的数组foo,结果值为[ 1, 3, 5 ].

我用琐碎的方法完成了这个,如下:

function getFields(input, field) {
    var output = [];
    for (var i=0; i < input.length ; ++i)
        output.push(input[i][field]);
    return output;
}

var result = getFields(objArray, "foo"); // returns [ 1, 3, 5 ]
Run Code Online (Sandbox Code Playgroud)

有没有更优雅和高效的方法来实现?


关于建议重复的注意事项,该问题询问如何将对象转换数组,这个问题询问如何对象数组中提取单个属性.

javascript javascript-objects

851
推荐指数
19
解决办法
60万
查看次数

如何将索引数组转换为关联数组?

有没有办法转换以下对象数组:

   array =  [
        { date: "08/18", id: 1 },
        { date: "08/14", id: 2 },
        { date: "08/15", id: 3 }
    ]
Run Code Online (Sandbox Code Playgroud)

入这个?只返回日期:

array2 = ["08/18", "08/14", "08/15"]
Run Code Online (Sandbox Code Playgroud)

我一直在尝试按如下方式推送日期元素,但它似乎不起作用:

array.map(e => {
    array2.push(e.date)
})
Run Code Online (Sandbox Code Playgroud)

提前致谢。

javascript arrays iteration associative-array reactjs

0
推荐指数
1
解决办法
37
查看次数