ES10 中新增的 Array.prototype.filter 方法是对数组进行筛选的实用工具方法,可以轻松地从数组中选择符合条件的元素。
语法
array.filter(callback(element[, index[, array]])[, thisArg])
参数说明:
callback
:用于测试数组中的每个元素的函数。执行该函数时,该函数将接受三个参数(element、index、array)。element
:当前正在处理的数组元素。index
:当前数组元素的索引。array
:被 filter 遍历的数组。thisArg
:传递给 callback 的值用于作为 this 的值。
示例
过滤出数组中大于 5 的数值
const arr = [1, 6, 5, 8, 10]; const filteredArr = arr.filter(element => element > 5); console.log(filteredArr); // [6, 8, 10]
过滤出数组中包含关键字的字符串
const arr = ['apple', 'banana', 'orange', 'strawberry']; const keyword = 'a'; const filteredArr = arr.filter(element => element.includes(keyword)); console.log(filteredArr); // ['apple', 'banana', 'orange']
学习以及指导意义
使用 filter 方法可以更加方便地筛选出符合条件的元素,避免了手动遍历数组的麻烦。同时,结合其他数组方法,可以轻松地实现数据的过滤、分组等操作,提高代码的可读性和可维护性。
值得注意的是,对数组进行操作时,我们应该始终保持对原数组的基本保留,避免因为不当的操作导致数组的数据结构被破坏。
总结
Array.prototype.filter 方法是一种非常实用的数组方法,可以帮助我们快速地筛选出符合条件的数组元素。在使用过程中应该注意对原数组的基本保留,以避免数据结构被破坏。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64dece1ff6b2d6eab39ee889