JS ES6 数组得一些处理方法归类

find()
数组实例的find方法,用于找出第一个符合条件的数组成员

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=1, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>


</body>
<script>
  var arr = [
    {
      id: 1,
      age: 22,
      name: "张三"
    },
    {
      id: 2,
      age: 33,
      name: "李四"
    },
    {
      id: 3,
      age: 25,
      name: "王五"
    },
    {
      id: 4,
      age: 27,
      name: "麻溜"
    }

  ]
  var r = arr.find(function (value, index, a) {
    // 三个参数  第一个参数 数组中的每一项  第二个参数索引 第三个参数 数组本身

    return   value.age > 25

  })
  console.log(r)
  
</script>
</html>

在这里插入图片描述
findIndex

数组实例的findIndex方法的用法与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1

  var r = arr.findIndex(function (v, i, aa) {
                return v.age < 80
            })
 console.log(r)
```//数组还是上面的arr

在这里插入图片描述
数组实例的 includes()

表示某个数组是否包含给定的值 如果包含 返回true 不包含返回false

var a1 = ["hello", "vue", "react", "微信"];
var r = a1.includes("vue");
console.log(r)    

在这里插入图片描述
isArray
判断变量 是不是数组 如果是 返回true 不是 返回 false

  var a = Array.isArray(a1);
  console.log(a)

在这里插入图片描述
forEach
遍历数组 主要是为了更方便的代替 for 对数组进行遍历。
注意:
1、 forEach() 对于空数组是不会执行回调函数的。
2、 for可以用continue跳过循环中的一个迭代,forEach用continue会报错。
3、 forEach() 需要用 return 跳过循环中的一个迭代,跳过之后会执行下一个迭代。

arr.forEach(function(v,index,a){
           // v 每一项  index 索引  a 当前数组
            console.log(v)
    		console.log(index)
    		console.log(a)
      })

在这里插入图片描述
filter
过滤数组 返回值是一个新的数组 符合条件那些元素

var re  = a3.filter(function(v){
			return v.price > 1000
	 })
// console.log(re)

map
处理数组的每一个元素 返回一个新的数组 处理过的元素

 var a4 = a3.map(function(v){
		var p =  v.price + 100
			v.price = p;
			return    v
		})
console.log(a4)

every
判断数组的每一项是否符合条件 只要有一个不符合是 false 跟与运算 有点像

var f = a5.every(function(v){
		 return  v.score >= 60
    })
   //  console.log(f)

some
遍历数组 查找符合条件的只要有一项符合 就返回true 返回值是布尔值 跟或运算类似

var f1 = a5.some(function(v,i){         
        console.log(i)
         return  v.score >= 80
   })
   // console.log(f1) 
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

姜天生i

如果本文对你有所帮助点赞就好~

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

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

打赏作者

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

抵扣说明:

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

余额充值