var arr1 = [{id:1,name:"a",y:true},{id:2,name:"b",y:true},{id:3,name:"c",y:true},{id:4,name:"d",y:true},{id:5,name:"e",y:true}];
var arr2 = [{id:1,name:"a",y:true},{id:2,name:"b",y:true}];
怎么用arr2匹配arr1,如果arr1中某项的id等于arr2某项的id,就给arr1中相应相等的项的y改为false;
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
没有嵌套 :)
利用Array的sort方法及concat方法引用复制的特点来实现查找
concat方法引用复制
sort方法
如果2者相同,那么不交换彼此的位置,也就是说如果arr1中的某项a和arr2中的某项b相同,那么排序结束后,
a会一一直保持在b元素的前面
使用map 函数咯
将数组arr1转为对象(其实是个map),然后直接查找就行了。