javascript总结25:Array的5中迭代方法: every(), filter() , forEach() map() some()

1 Array常用的操作方法:

1 操作方法

- concat() //把参数拼接到当前数组

-slice() //从当前数组中截取一个新的数组,不影响原来的数组,参数start从0开始,end从1开始

-splice()//删除或替换当前数组的某些项目,参数start,deleteCount,options(要替换的项目)

2 位置方法

-indexOf()、lastIndexOf() //如果没找到返回-1

3 迭代方法 不会修改原数组

-every() 他的返回值是一个boolean类型值。而参数是一个回调函数。

var arr = ["1111","2222","3333","4444","5555"];

   // ====every()
  var bool = arr.every(function (element,index,array) {
//        element = "aaa";
//        array[index] = "aaa";
      console.log(element);
      console.log(index);
      console.log(array);
      // return true;
      if(element.length>2){
          return false;
      }
      return true;
  });
   console.log(arr);
    var bool1 = arr.every(function (){
        return true
    });
    alert(bool1);

-filter()返回值是一个新数组。return为true的数组。

var arr1 = arr.filter(function (ele,index,array) {
        if(ele.length>2){
            return false;
        }
        return true;
    });

    console.log(arr1);

-forEach() 遍历数组(无返回值,纯操作数组中的元素)

var str = "";
   arr.forEach(function (ele,index,array) {
       str+=ele;
   });
   alert(str);

-map() 有返回值,返回什么都添加到新数组中。

 var arr2 = arr.map(function (ele,index,array) {
       return ele+"你好";
   });

   console.log(arr2);

-some()  有返回值,函数结果有一个是true,本方法结果也是true。

var n1;
    var flag = arr.some(function (ele,index,array) {
       if(ele.length>2){
           console.log(ele);
           return true;
       }
       return false;
   });
   alert(flag);
原文地址:https://www.cnblogs.com/autoXingJY/p/8949985.html