在一个组件中,我可以使用以下方法过滤我的数组:
// Array of product objects
const result = products.filter(p => p.name.includes('val'));
产品价值与第一个价值相同,但过滤值存储在result
。
但是在下面的代码中,filter()
过滤了字符串数组本身:
// Array of strings
const result = strs.filter(s => s.includes('val'));
问题是如何在不修改strs
本身的情况下过滤字符串并返回结果?
注意:我尝试使用array.filter(function() { return res; });
但没有做任何改变。
它返回已过滤的数据,不会更改实际数组。你做错了什么
const strs = ['valval', 'bal', 'gal', 'dalval'];
const result = strs.filter(s => s.includes('val'));
console.log(strs);
console.log(result);