对象转换为对象数组
原始对象包含嵌套数组,我们需要将这个对象转换为一个数组,其中每个元素都是一个具有 id、name 和 childList 子数组的对象。
实现这一目标的一种方法是使用 Object.entries() 和 reduce() 函数。
let obj = { "a": [ "a1", "a2" ], "b": [ "b1", "b2", "b3" // 数组内个数不定 ], // ...... }; let id = 1; Object.entries(obj).reduce((acc, [name, val]) => { acc.push({id: id++, name, childList: val.map(name => ({id: id++, name}))}); return acc; }, []);
登录后复制
此代码会返回一个如下所示的数组:
[ { id: 1, name: 'a', childList: [ {id: 3, name: 'a1'}, {id: 4, name: 'a2'}, ] }, { id: 2, name: 'b', childList: [ {id: 5, name: 'b1'}, {id: 6, name: 'b2'}, {id: 7, name: 'b2'}, ] } ]
登录后复制
以上就是如何将包含嵌套数组的对象转换为包含id、name和子数组的数组?的详细内容,更多请关注抖狐科技其它相关文章!
-
三星折叠屏手机怎么玩
三星折叠屏手机的独特体验包括:展开和折叠屏幕,实现多窗口和分屏模式;创建悬浮窗口;使用封面屏幕访问基本功能;通过动作控制进行操作;以 flex 模式折叠观看视频或进行通话;使用针对折叠屏优化的应用程序...
-
JavaScript 代码中 || 操作符为什么返回对象而不是布尔值?
理解 javascript 代码中 || 操作 问题中提到的 javascript 代码如下: var attr = attr || '';登录后复制 有人疑惑,这段代码不是应该返回一个布尔值吗?为什...
-
u盘文件乱码怎么恢复
当 u 盘文件出现乱码时,可以采取以下步骤恢复:扫描病毒。检查文件系统。使用数据恢复软件。修复损坏的文件(某些格式支持)。从备份中恢复(如已备份)。重新格式化(最后手段,将删除所有数据)。U 盘文件乱...
-
bing国际版如何下载
bing 国际版下载方法:直接从 microsoft 网站下载:访问微软 bing 下载页面并选择适用于你的设备的下载链接。通过 microsoft store 下载:在应用商店中搜索“bing”,选...
-
酷狗唱唱怎么练歌 酷狗唱唱练歌方法
酷狗唱唱新手入门,想练好歌?这里有实用方法!你知道酷狗唱唱怎么用吗?如果你还在为练歌找不到好的方法而苦恼,那就别错过这篇文章!php小编苹果将为大家详细介绍酷狗唱唱的练歌技巧,让你快速提升歌唱水平,成...