数组的方法整理

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <script>
      let arr=[1,2,3,4,5]
      console.log(arr.concat(6,7));   //[1,2,3,4,5,6,7]不改变原数组,返回新数组,拼接
      console.log(arr.copyWithin(2,0,2))   //[1,2,1,2,5]  参数1表示复制到指定位置索引,参数2表示开始复制索引,参数3表示结束复制索引(开区间),会改变原数组
      
      // filter循环
      let newArr=arr.filter(item=>{     //循环过滤,不改变原数组,返回新数组
        return item>3
      })
      console.log(newArr);  //[5]
      
      // forEach循环
      arr.forEach(item=>{   //不改变原数组,返回的是符合条件的元素
        if(item>1){
          console.log(item);   //2,2,5
        }
      })
      
      //map循环
      let brr=arr.map(item=>{
        return item+1
      })
      console.log(brr);   // [2, 3, 2, 3, 6]  不改变原数组,返回新数组


      let num=[1,10,21,25,26,21]

      // findIndex方法
      function findIndex(e){
        return e>20
      }
      console.log(num.findIndex(findIndex));  //2 参数为回调函数,返回第一个符合条件的索引
      
      // find方法
      function find(e){
        return e>20
      }
      console.log(num.find(find));  //21 参数为回调函数,返回第一个符合条件的元素
      //some方法
      function some(e){
        return e>30
      }
      console.log(num.some(some));  //false 参数为回调函数,只要碰到一个符合条件的元素就停止,返回值为布尔值,没有符合的返回false

      // includes方法
      console.log(num.includes(10))   //true  判断数组中是否含有某个元素,返回布尔值

      //indexOf方法
      console.log(num.indexOf(21)); //2 判断数组中是否存在某个元素,返回值为第一个该元素的索引,如果不存在则返回-1

      //join方法
      console.log(num.join('!'));  //1!10!21!25!100!21  将数组所有元素连接成字符串,默认是逗号,亦可传入指定字符
      
      //slice方法
      console.log(num.slice(0,2));  //[1,10]  //截取数组部分,返回新数组,左闭右开,不改变原数组
      
      //splice方法
      //console.log(num.splice(1,3));  //[10,21,25] 截取数组部分,左闭右闭 ,会改变原数组
      
      //sort方法
      console.log(num.sort());  // [1,10,21,21,25,26] 对数组进行排序,默认从小到大 
      num.sort((a, b) => a-b) // 正序
      num.sort((a, b) => b-a) // 倒序

  </script>
</body>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值