请教一个关于数组合并的问题

2019-06-26 10:20:31 +08:00
 Colorful

请教一个数组的问题

有两个数组,合并成一个数组

数组一:[{id:"150",name:"李三"},{id:"151",name:"李三 1"},{id:"152",name:"李三 2"},{id:"153",name:"李三 3"}]

数组二:[{"sname":"一级","otor":["李三 1","150"]},{"sname":"一级 2","otor":["李三 2"]},,{"sname":"一级 3","otor":["153"]},]

最后合并成数组:[{"sname":"一级","otor":[{id:"151",name:"李三 1"},{id:"150",name:"李三"}]},{"sname":"一级 2","otor":[{id:"152",name:"李三 2"}]},,{"sname":"一级 3","otor":[{id:"153",name:"李三 3"}]},]

2735 次点击
所在节点    前端开发
12 条回复
weixiangzhe
2019-06-26 11:11:05 +08:00
没有看懂,感觉缺了点东西,没有基准的样子

https://imgur.com/s8hOYy1
weixiangzhe
2019-06-26 11:14:17 +08:00
weixiangzhe
2019-06-26 11:15:30 +08:00
[img][/img]
Colorful
2019-06-26 11:26:34 +08:00
@weixiangzhe 你发的打不开啊
第一个数组是显示出来的,第二个数组是结果,第三个数组是要传给后端的值
SeaRecluse
2019-06-26 11:41:59 +08:00
太乱了,遍历 value 然后直接添加呗:|
Colorful
2019-06-26 11:50:57 +08:00
@weixiangzhe 对,就是这样的

不过现在数组有点变化,刚刚没加上去

假如说再变化一下方式应该是怎么样修改?在第二个数组里面多加了一个新的,在第一个数组里面是没有的。

数组一:[{id:"150",name:"李三"},{id:"151",name:"李三 1"},{id:"152",name:"李三 2"},{id:"153",name:"李三 3"}]

数组二:[{"sname":"一级","otor":["李三 1","150"]},{"sname":"一级 2","otor":["李三 2"]},{"sname":"一级 3","otor":["153"]},{"sname":"一级 4","otor":[{id:"1531",name:"李三 31"}]},]

最后合并成数组:[{"sname":"一级","otor":[{id:"151",name:"李三 1"},{id:"150",name:"李三"}]},{"sname":"一级 2","otor":[{id:"152",name:"李三 2"}]},{"sname":"一级 3","otor":[{id:"153",name:"李三 3"}]},{"sname":"一级 4","otor":[{id:"1531",name:"李三 31"}]
weixiangzhe
2019-06-26 12:02:54 +08:00
@Colorful 你这第二的组数里 otor 结构都不一致 玩个毛,先怼后端去吧
cyndra0
2019-06-26 12:29:24 +08:00
就是类似 SQL 里 left join 的操作吧,遍历数组二和里面的 octor,判断 octor 值是 id 还是 name
renmu
2019-06-26 12:55:56 +08:00
otor 里面的内容 id 和 name 混在一起了,不管怎么判断肯定会有 bug,数据结构一定要统一。
Colorful
2019-06-26 14:05:26 +08:00
@weixiangzhe 用的框架,展示出来的数据是有些不一样的
finalwave
2019-06-26 15:38:04 +08:00
佛了,otor 里有 id 字符串有 name 字符串还有 object。
数据不是很大就暴力遍历每个 otor 数组,把每个字符串去数组一里找对应对象替换进来。
Colorful
2019-06-26 18:12:11 +08:00
@finalwave 额,搞定了,还是有点麻烦的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/577543

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX