要对数组进行筛选,但不创建新的数组副本,可以使用Array.filter()方法。该方法会返回一个新的数组,其中包含满足指定条件的原数组元素。
以下是一个示例代码:
const numbers = [1, 2, 3, 4, 5];
// 使用filter方法筛选数组,保留大于2的元素
const filteredNumbers = numbers.filter((num) => num > 2);
console.log(filteredNumbers); // 输出: [3, 4, 5]
console.log(numbers); // 输出: [1, 2, 3, 4, 5]
在上述代码中,我们定义了一个数组numbers
,然后使用filter()
方法筛选出大于2的元素并存储到filteredNumbers
变量中。filteredNumbers
变量是一个新的数组副本,其中包含满足条件的元素。原始数组numbers
并没有改变。
需要注意的是,filter()
方法不会修改原始数组,而是返回一个新的数组。