js数组的遍历(API)

1.for 循环

普通遍历方法,可优化,存下数组的length,避免每次都去获取数组的length,性能提升

for(var i=0;i<arr.length;i++){
   console.log(arr[i]);  
}

2.for-in

不仅可遍历数组还可以遍历对象

for(key in obj)

该方法可以读取对象本身的成员属性,又可以遍历出对象的原型属性

3.forEach

无返值,可用return退出循环,不能用break退出循环

1  var str = "";
2     arr.forEach(function (ele,index,array) {
3         str+=ele;
4     });
5     alert(str);

4.map

有返回值,遍历后返回一新的数组,不改变原数组,返回什么都添加到数组中,相当于把数组的每一项变成return 的值

1  var arr2 = arr.map(function (ele,index,array) {
2         return ele+"你好";
3     })
4 
5     console.log(arr2);

5.filter 

有返回值,return为true的数组,不改变原数组,筛选,不改变数组每一项的值,筛选出满足条件的新数组

1  var arr1 = arr.filter(function (ele,index,array) {
2         if(ele.length>2){
3             return true;
4         }
5         return false;
6     });
7 
8     console.log(arr1);

6.every

返回值为true或false,当数组的每一项都满足条件返回true,否则返回false,而参数是回调函数

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

    alert(bool);

7.find

对数组的每一个元素执行提供的函数,若有一个符合函数要求,则返回此数组的元素,结束循环,否则返回undefined

8.reduce

类加。空数组无返回值

猜你喜欢

转载自www.cnblogs.com/my12-28/p/11740750.html