前端把新数组往老数组里面push,重复的值不要
时间: 2024-05-05 14:17:47 浏览: 38
不重复值操作(很实用)
可以使用Array.prototype.filter()方法来过滤重复的值,然后再使用Array.prototype.push()方法把新数组的非重复值加入到老数组中。
示例代码如下:
```
var oldArr = [1, 2, 3, 4, 5];
var newArr = [3, 4, 6, 7, 8];
newArr.filter(function(item) {
return oldArr.indexOf(item) === -1;
}).forEach(function(item) {
oldArr.push(item);
});
console.log(oldArr); // [1, 2, 3, 4, 5, 6, 7, 8]
```
首先,使用filter()方法过滤出newArr中不重复的元素,即在oldArr中不存在的元素。具体实现是通过indexOf()方法判断newArr中的元素在oldArr中是否存在,不存在则返回true,表示需要保留该元素,存在则返回false,表示需要过滤掉该元素。
然后,使用forEach()方法遍历过滤后的新数组,依次将元素加入到老数组中,使用push()方法实现。
最终,打印老数组oldArr,即可得到加入了新数组中不重复元素的完整数组。
阅读全文