JS基础数组元素的筛选的两种方法

118 阅读1分钟

数组元素的筛选

eg.

将数组 [2, 0, 6, 1, 77, 0, 52, 0, 25, 7] 中的 0 去掉后,形成一个不包含 0 的新数组

  1. 方法一
  • 声明一个新的数组用于存放新数据newArr
  • 遍历原来的旧数组, 找出不等于0的元素
  • 依次追加给新数组 newArr
//声明数组
 let arr = [2, 0, 0, 6, 1, 77, 0, 52, 0, 25, 7]
 //声明一个新的空数组
 let newArr = []
    //遍历数组
    for (let i = 0; i < arr.length; i++) {
      //从数组中筛选出不等于0的元素
      if (arr[i] !== 0) {
          //依次追加给新数组 newArr
          newArr.push(arr[i])
      }
    }
    //控制台打印输出得到的新数组
    console.log(newArr);
  1. 方法二
  • 遍历原来的旧数组, 找出不等于0的元素
  • 依次从原来的旧数组中删除
  • i自减,使删除元素之后下标对上删除之前的元素
//声明数组
 let arr = [2, 0, 0, 6, 1, 77, 0, 52, 0, 25, 7]
    //遍历数组
    for (let i = 0; i < arr.length; i++) {
      //从数组中筛选出等于0的元素
      if (arr[i] === 0) {
        //使用splice删除整个元素
        arr.splice(i, 1)
        //元素删除后,后面元素的下标会减少1,所以i自减,使删除元素之后下标对上删除之前的元素
        i--
      }
    }
    //控制台打印输出得到的新数组
    console.log(arr);