怎么把两个js 数组过滤合并成一个数组?谢谢

varprovince=[{id:1,name:"北京"},{id:2,name:"河南"},{id:3,name:"河北"}]varcity=[{pid:1,name:... var province=[ {id:1,name:"北京"}, {id:2,name:"河南"}, {id:3,name:"河北"} ] var city=[ {pid:1,name:'北京市'}, {pid:2,name:'郑州市'}, {pid:2,name:'洛阳市'}, {pid:3,name:'石家庄市'} ] newarr=[ {name:'北京',city:'北京市'}, {name:'河南',city:['郑州市','洛阳市']}, {name:'河北',city:'石家庄市'} ] 展开
 我来答
来宾你好闯天涯
2019-07-09 · TA获得超过3876个赞
知道大有可为答主
回答量:4086
采纳率:64%
帮助的人:794万
展开全部
首先考虑的是两个数组之间靠什么来关联:
根据newArr得出: province的id对应的city里面的pid;
所以遍历数组时候合并的逻辑: id ==pid.然后合为新数组的一个元素。
var newArr=[];
function combineArr(arr1, arr2){
var len = arr1.length;
for(var i=0; i<len; i++){
if(arr1[i].id == arr2[i].pid){
var obj = {};
obj['name']=arr1[i].name;
obj['city'] = arr2[i].name;
newArr.push(obj);
}

return newArr;
}

}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式