首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >VUE学习笔记——es6对象合并 数组转对象

VUE学习笔记——es6对象合并 数组转对象

作者头像
全栈程序员站长
发布2022-10-03 14:36:42
发布2022-10-03 14:36:42
1.3K0
举报

大家好,又见面了,我是你们的朋友全栈君。

测试数据

代码语言:javascript
复制
let array = [
    {name: 'Conan', age: 17, gender: true}, 
    {name: 'Ran', age: 16}, 
    {name: 'Sherry', age: 20}
];

方法一:循环

代码语言:javascript
复制
const arr = [{date: "2018-11-18", name: "demo1"}, {date: "2018-11-19", name: "demo2"}];
         const target = {};
      arr.forEach(a => {
        const source = JSON.parse(`{"${a.date}":"${a.name}"}`);//利用JSON.parse将对象
                                                              //格式直接造出来
        Object.assign(target,source);
      })
     // console.log(target)

方法二:析构函数

代码语言:javascript
复制
let result = {...array};

/* 
    {
        0:{"name":"Conan","age":17,"gender":true},
        1:{"name":"Ran","age":16},
        2:{"name":"Sherry","age":20}}
    }
*/

方法三:累加器

代码语言:javascript
复制
let result = array.reduce((accumulator, current) => {
    accumulator[current.name] = current;
    return accumulator;
}, {});

/* 
    {
        Conan: {name: "Conan", age: 17, gender: true}
        Ran: {name: "Ran", age: 16}
        Sherry: {name: "Sherry", age: 20}
    }
*/

方法四:循环

代码语言:javascript
复制
let result = {};
array.forEach((item, index) => result[item.name] = item);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/197380.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月4日 下,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档