• 通过 filter 筛选的方法,验证一个数组,即便:只验证数组的一部分,返回值时。也是返回整个数组。
    • for:(属于前测试循环语句,循环前初始化变量和定义循环后要执行的代码的能力) ```jsx const arr = [‘a’,’b’,’c’];

    // 方法一: for (let i = 0;i<arr.length;i++){ console.log(arr[i]); } // 方法二:for of for(let item of arr){ console.log(item); } // 方法三: for in for(let index in arr){ console.log(arr[index]); }
    // 方法四:forEach 前面需要加接收变量 arr.forEach(function(item,index){ … });

    1. - while:(也是前测试语句)
    2. ```jsx
    3. while(测试){
    4. 循环体}
    5. let i= 0;
    6. while(i<3){
    7. console.log(i);
    8. i++;
    9. }
    • do while:(后测试语句,循环体执行后才会测试出口条件:先执行一次循环体在进行条件判断,如果有就继续循环。至少执行一次)
    • 截取 slice: 可以使用负数(跟lastIndexOf 的下边不一样,这个是倒序。) ```jsx let arr = [1,2,3,5,6,4]; let result = arr.slice(2); console.log(result); //[3,5,6,4]

    let arr = [1,2,3,5,6,4]; let result = arr.slice(2,4); console.log(result); //[3,5] //1,截取后会返回一个新的数组,原数组不变arr.slice(startindex,endindex);

    1. - 连接方法 concat()
    2. ```jsx
    3. let arr1 = [1,2,3];
    4. let arr2 = ['a','b','c'];
    5. let arr3 = arr1.concat(arr2);
    6. console.log(arr3); //[1,2,3,'a','b','c']
    7. // 重点:let arr3 = arr1.concat(4,5,6) 和 arr1.push(4,5,6) 都可以添加。
    8. //前面的不会影响原数组(会将新的数组附加给新创建的arr3),arr1.push(4,5,6) 后面的会影响原数组
    • 位置方法 indexOf( ) 和 lastlndexOf( )

      1. let arr = ['a','b','c','d','c'];
      2. console.log(arr.indexOf('c')); // 2
      3. console.log(lastlndexOf('c')); // 4
      4. //从数组头部或末尾开始查找指定元素,返回元素在数组中的索引值(索引值:查找数的下标)
      5. //查找不到则会返回 -1,进行全等比较
    • 查找方法 includes()

      1. let arr = [1,2,3];
      2. console.log(arr.includes('1')); //false
      3. console.log(arr.includes(1)); //true
      4. //includes( )接收一个参数:元素,返回布尔值,进行全等匹配
    • 扁平化方法 flat()

      1. let arr = [0,1,2,[3,4]];
      2. console.log(arr.flat()); //[0,1,2,3,4]
      3. //按照一个可指定深度递归遍历数组、并将所有元素与遍历到的字数组元素合并为一个新数组返回