遍历数组 塌陷 严格模式

86 阅读3分钟
  • 数组的塌陷

      var arr = [0, 1, 2, 3, 4, 5]
       下标    0   1  2  3  4  5
    
      需求: 将数组清空(将数组每一项删除)
    
       for (var i = 0; i < arr.length; i++) {
           arr.splice(i, 1)    // 0  1  2  3  4  5
           i--
       }
    
      for (var i = arr.length - 1; i >= 0; i--) {
          arr.splice(i, 1)
      }
      console.log(arr)
      
      
      
    

    数组的遍历方法 forEach; map; filter; find; findIndex; every; some; reduce; 1. forEach 语法: 数组.forEach(function(item, index, origin){}) 参数: 1. 数组实际每一项的值 2. 数组每一项对应的下标 3. 原数组 作用: 遍历数组 返回值: 返回值是 undefined 哪怕你手写了 return 也是 undefined

       *  2. map
       *      * 语法: 数组.map(function (item, index, origin) {})
       *      * 参数: 
       *              1. 数组每一项实际的值
       *              2. 数组每一项实际的值对应的下标
       *              3. 原数组
       *      * 作用: 映射数组
       *      * 返回值: 返回一个和原数组长度一样的数组, 返回的数组的每一个值, 取决参数的return怎么写
       * 
       *  3. filter; 
       *      * 语法: 数组.filter(function (item, index, origin) {})
       *      * 参数: 
       *              1. 数组每一项实际的值
       *              2. 数组每一项实际的值对应的下标
       *              3. 原数组
       *      * 作用: 过滤数组
       *      * 返回值: 过滤数组后的新数组, 过滤条件取决于 参数的 return 怎么写
       *  4. find; 
       *      * 语法: 数组.find(function (item, index, origin) {})
       *      * 参数: 
       *              1. 数组每一项实际的值
       *              2. 数组每一项实际的值对应的下标
       *              3. 原数组
       *      * 作用: 查找数据
       *      * 返回值: 在数组内找到的第一个数据(不是数组)
       *  5. findIndex;
       *      * 语法: 数组.findIndex(function (item, index, origin) {})
       *      * 参数:
       *              1. 数组每一项实际的值
       *              2. 数组每一项实际的值对应的下标
       *              3. 原数组
       *      * 作用: 查找数据 第一次出现的 下标
       *      * 返回值: 在数组内找到的第一个数据出现的下标
       * 
       *  6. every; 
       *      * 语法: 数组.every(function(item, index, origin){})
       *      * 参数:
       *              1. 数组第一项实际的值
       *              2. 数组第一项实际的值对应的下标
       *              3. 原数组
       *      * 作用: 判断数组内数据是否全都满足条件
       *      * 返回值: 一个布尔值
       *          true ---> 数组内数据全都符合条件
       *          false ---> 数组内起码有一个数据 不符合条件
       *  
       *  7. some;
       *      * 语法: 数组.some(function (item, index, origin) {})
       *      * 参数:
       *              1. 数组每一项实际的值
       *              2. 数组每一项实际的值对应的下标
       *              3. 原数组
       *      * 作用: 判断数组内数据是否  有一项 满足条件的
       *      * 返回值: 一个布尔值
       *          true: 表示数组内至少有一项满足条件
       *          false: 数组内数据全都不满足条件
       * 
       *  8. reduce;
       *      * 语法: 数组.reduce(function (prve, item, index, origin) {}, init)
       *      * reduce方法的参数: 
       *              1. 如果传递第二个参数 init, 执行次数和数组长度相同
       *              2. 如果不传递第二个参数 init, 默认第一值为数组第一项的值, 并且执行次数在数组长度上 减1
       *      * 参数1的函数中4个形参的含义:
       *              1. 表示初始值或者数组第一项的值(具体是什么取决于是否传递 init)
       *              2. 数组每一项实际的值
       *              3. 数组每一项实际的值对应的下标
       *              4. 原数组
       *      * 作用: 累加(叠加)
       *      * 返回值: 循环运行结束后得到的值
    

严格模式

     'use strict'
    var a = 100
    console.log(a)  // 100

    b = a
    console.log(b)  // 100