es6 数组中filter(),find()、findIndex()方法

filter(),find()、findIndex()方法

他们三个回调函数都有三个参数 value:当前的数组元素,index:当前索引值,arr:被查找的数组。

1,filter()

filter()创建一个新的数组,判断符合条件的元素,生产一个新数组,新数组中为符合条件的元素。

const arr = [1,2,3,4,5,6,7,8];
const array = arr.filter(num => num > 1)
console.log(array);//打印 [2,3,4,5,6,7,8]

注意:不会filter不会对空数组检测

2,find()

find()该方法主要应用于查找第一个符合条件的数组元素。

const arr = [1,2,3,4,5,6,7,8];
const array = arr.find(num => num > 1)
console.log(array);//打印 2 找到第一个后不会查找后面的

//没有符合条件的返回undefined
const array = arr.find(num => num > 10)
console.log(array);//undefined

3,findIndex()

当条件成立时findIndex()返回的是索引值,如果没有符合条件元素时返回的是-1

const arr = [1,2,3,4,5,6,7,8];
const array = arr.findIndex( (num) => num =8)
console.log(array);//打印 7 索引值

//没有符合条件的返回-1
const array = arr.findIndex(num => num > 10)
console.log(array);//打印-1 没有符合条件的元素

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
eS6(ES2015)引入了许多新的数组方法,以下是其中一些常见的方法: 1. `Array.from()`:将类数组对象或可迭代对象转换为真正的数组。 2. `Array.of()`:创建一个包含传入参数的新数组。 3. `Array.prototype.find()`:返回数组中满足条件的第一个元素。 4. `Array.prototype.findIndex()`:返回数组中满足条件的第一个元素的索引。 5. `Array.prototype.includes()`:判断数组是否包含指定的元素。 6. `Array.prototype.fill()`:用一个固定值填充整个数组或指定的部分。 7. `Array.prototype.keys()`:返回一个包含数组索引的新迭代器对象。 8. `Array.prototype.values()`:返回一个包含数组值的新迭代器对象。 9. `Array.prototype.entries()`:返回一个包含数组索引和值的新迭代器对象。 10. `Array.prototype.flat()`:将多维数组扁平化为一维数组。 11. `Array.prototype.flatMap()`:首先使用映射函数映射每个元素,然后将结果扁平化为一维数组。 12. `Array.prototype.forEach()`:对数组中的每个元素执行提供的函数。 13. `Array.prototype.map()`:创建一个新数组,其中每个元素为原始数组元素调用提供的函数的结果。 14. `Array.prototype.filter()`:创建一个新数组,其中仅包含满足条件的原始数组元素。 15. `Array.prototype.reduce()`:将数组元素通过提供的函数累积为单个值。 16. `Array.prototype.reduceRight()`:与`reduce()`相同,但从右向左处理数组元素。 17. `Array.prototype.some()`:检查数组中是否至少有一个元素满足条件。 18. `Array.prototype.every()`:检查数组中的所有元素是否都满足条件。 19. `Array.prototype.sort()`:原地对数组进行排序。 20. `Array.prototype.reverse()`:原地反转数组元素的顺序。 这些是ES6中常见的数组方法,它们提供了更便捷和灵活的方式来操作和处理数组。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

好多事。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值