V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Colorful
V2EX  ›  前端开发

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

  •  
  •   Colorful · 2019-06-26 10:20:31 +08:00 · 2735 次点击
    这是一个创建于 2010 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请教一个数组的问题

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

    数组一:[{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"}]},]

    12 条回复    2019-06-26 18:12:11 +08:00
    weixiangzhe
        1
    weixiangzhe  
       2019-06-26 11:11:05 +08:00
    没有看懂,感觉缺了点东西,没有基准的样子

    https://imgur.com/s8hOYy1
    weixiangzhe
        2
    weixiangzhe  
       2019-06-26 11:14:17 +08:00
    weixiangzhe
        3
    weixiangzhe  
       2019-06-26 11:15:30 +08:00
    [img][/img]
    Colorful
        4
    Colorful  
    OP
       2019-06-26 11:26:34 +08:00
    @weixiangzhe 你发的打不开啊
    第一个数组是显示出来的,第二个数组是结果,第三个数组是要传给后端的值
    SeaRecluse
        5
    SeaRecluse  
       2019-06-26 11:41:59 +08:00
    太乱了,遍历 value 然后直接添加呗:|
    Colorful
        6
    Colorful  
    OP
       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
        7
    weixiangzhe  
       2019-06-26 12:02:54 +08:00
    @Colorful 你这第二的组数里 otor 结构都不一致 玩个毛,先怼后端去吧
    cyndra0
        8
    cyndra0  
       2019-06-26 12:29:24 +08:00
    就是类似 SQL 里 left join 的操作吧,遍历数组二和里面的 octor,判断 octor 值是 id 还是 name
    renmu
        9
    renmu  
       2019-06-26 12:55:56 +08:00 via Android
    otor 里面的内容 id 和 name 混在一起了,不管怎么判断肯定会有 bug,数据结构一定要统一。
    Colorful
        10
    Colorful  
    OP
       2019-06-26 14:05:26 +08:00
    @weixiangzhe 用的框架,展示出来的数据是有些不一样的
    finalwave
        11
    finalwave  
       2019-06-26 15:38:04 +08:00
    佛了,otor 里有 id 字符串有 name 字符串还有 object。
    数据不是很大就暴力遍历每个 otor 数组,把每个字符串去数组一里找对应对象替换进来。
    Colorful
        12
    Colorful  
    OP
       2019-06-26 18:12:11 +08:00
    @finalwave 额,搞定了,还是有点麻烦的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1057 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 19:28 · PVG 03:28 · LAX 11:28 · JFK 14:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.