javascript - 将多个对象插入单个对象

标签 javascript arrays json javascript-objects

我正在考虑将多个 Json 对象推送到 1 个对象中。

目前我正在从 AJAX 解析一个数组,它的控制台日志是这样的

0:{id: "24", user: "Joe", pass: "pass", name: "Joe Bloggs", role: "Technical Support", …}
1:{id: "25", user: "Jim", pass: "pass", name: "Jim Bloggs", role: "Technical Support", …}
2:{id: "26", user: "John", pass: "pass", name: "John Bloggs", role: "Technical Support", …}

我需要运行一个循环,并将所有的 id 和用户以这种格式放入一行

0: {Joe : 24, Jim : 25, John : 26}

我该怎么做?

谢谢

最佳答案

您可以将数据缩减为一个新对象:

let a = [{id: "24", user: "Joe", pass: "pass", name: "Joe Bloggs", role: "Technical Support"},
{id: "25", user: "Jim", pass: "pass", name: "Jim Bloggs", role: "Technical Support"},
{id: "26", user: "John", pass: "pass", name: "John Bloggs", role: "Technical Support"}]

let res = a.reduce((a,b) => {
    a[b.user] = b.id;
    return a;
}, {});

console.log(res);

或者如果你更喜欢解构

let a = [{id: "24", user: "Joe", pass: "pass", name: "Joe Bloggs", role: "Technical Support"},
{id: "25", user: "Jim", pass: "pass", name: "Jim Bloggs", role: "Technical Support"},
{id: "26", user: "John", pass: "pass", name: "John Bloggs", role: "Technical Support"}]

let res = {};
for (let {id, user} of a) {
    res[user] = id;
}

console.log(res);

关于javascript - 将多个对象插入单个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45943536/

相关文章:

javascript - 在 Javascript 中实例化数组后定义其初始数据的最佳方法是什么?

javascript - 如何在 javascript 中创建包含小时和分钟的数组?

即使 block 较小,Javascript 数组性能也会崩溃

javascript - 如何将 PHP 二维数组传递给 JS 脚本?

php - 从 JSON 返回的结果插入到 mysql 表中,然后通过电子邮件发送结果

javascript - ScriptInjector 在特定 div 上注入(inject)脚本

javascript - Div 在淡入淡出时闪烁

来自导入数组的 JavaScript 随机项行为异常

json - 从 nvarchar 返回 JSON 对象

ruby-on-rails-3 - 在 Rails 3 应用程序中解析 JSON HTTP 帖子?