数组a
[{key:1,name:'name1'},{key:2,name:'name2'},{key:3,name:'name3'},{key:4,name:'name4'},{key:5,name:'name5'}]
数组b是在数组a的一部分
[{key:1,name:'name1'},{key:2,name:'name2'}]
数组c是在数组b的基础上进行修改
[{key:1,name:'name11'},{key:22,name:'name22'}]
现在需要最后的结果为key:1被修改,key:2被删除,key:3,key:4,key:5无变化保留,key:22被添加
[{key:1,name:'name11'},{key:3,name:'name3'},{key:4,name:'name4'},{key:5,name:'name5'},{key:22,name:'name22'}]
请问一下如何才能实现这个逻辑
你是要比较还是合并?合并用 deepmerge 很方便
雷雷
extend方法 跟git 的merge差不多
我那样写应该会得到你最后想要的那种结果
雷雷
如果找不到好的工具,或者不想污染命名空间,那就把数组解耦,这样应该可以满足你的要求
给你一段代码拿去想象(只适用与数组合并),将下面的代码拿到控制台输出一下就行了
然后修改下适应你的需求: