js 两个对象数组去重方法

实现思路: 有两个对象数组,去除相同部分数据,得到一个新数组,根据数组中每一项的id(或者特殊字段,要保证唯一性),进行判断

			//数组1
			var a1 = [{
					'id': 1,
					'name': 1
				},
				
			];
			//数组2
			var a2 = [
				{
					'id': 1,
					'name': 1
				},
				{
					'id': 2,
					'name': 2
				},
				{
					'id': 3,
					'name': 3
				},
				{
					'id': 4,
					'name': 4
				}, {
					'id': 5,
					'name': 5
				},
			];
			// 封装去重的方法 maxArr 长度大的数组   minArr 长度小的数组,要进行比较的数组  返回的结果
			function arrRemoveRepetition(maxArr, minArr) {
				var nArr = [];  //存储新数组
				nArr = maxArr.filter(function(item) {
					var temp = minArr.map(function(v) {
						return v.id
					})
					return !temp.includes(item.id)
				})
				return nArr
			}

			console.log(arrRemoveRepetition(a1, a2), '去重完的数据');

©️2020 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页