关于JS数组过滤的问题,两个数组合并

实际运用场景:

A数组是原始数组,

B数组是需要过滤的数组,

这时候我的需求是:得到从A数组中过滤掉B数组的所有元素得到C数组。

var aArray = [];
var bArray = [];
var cArray = [];
var temp = []; //临时数组1
var temparray = [];//临时数组2
if (bArray && bArray.length > 0) {
	bArray.forEach(function (item) {
		temp[item["shopNo"]] = true;//把数组B的值当成临时数组1的键(key)并赋值为真
	});
	aArray.forEach(function (item) {
		if (!temp[item["storeCode"]]) {
			temparray.push(item);
			//同时把数组A的值当成临时数组1的键(key)并判断是否为真,
			//如果非真说明没重复,就push到一个新数组里
		}
	});
} else {
	temparray = aArray;//B数组为空
}
cArray = temparray;

 

你可能感兴趣的:(前端)