一、數(shù)組遍歷
-
for循環(huán)
-
for in
-
var a=[1,2,3,4,5,6];
for(var i in a){
console.log(i)
}
//0,1,2,3,4,5
/*遍歷數(shù)組的下標*/
-
for of
var a=[1,2,3,4,5,6];
for(var i of a){
console.log(i)
}
//1,2,3,4,5,6
/*遍歷數(shù)組的值*/
使用Object.keys()獲取下標
-
迭代方法
- every() 對數(shù)組中的每一項執(zhí)行函數(shù)夺巩,如果每一項返回true則函數(shù)返回true
- some() 對數(shù)組中的每一項執(zhí)行函數(shù)具练,如果有一項返回true則函數(shù)返回true
- map() 對數(shù)組中的每一項執(zhí)行函數(shù)乍构,返回處理后的每一項
- fliter() 對數(shù)組中的每一項執(zhí)行函數(shù),將返回true的項組成數(shù)組返回
- forEach() 對數(shù)組中的每一項執(zhí)行函數(shù)扛点,沒有返回值
var a=[1,2,3,4,5,6,77,55,43];
a.map((value,index,a)=>{
console.log("this is ["+a+],and a["+index+"]="+value);
//this is[1,2,3,4,5,6,77,55,43],and a[0]=1
})
a.filter((value)=>{
if(value>5)
return value;
});//[6,77,55,43]
- reducer(callback,initialValue)/reducerRight()
var x=[1,2,3,4,5,6,7]
x.reduce((pre,value,i,x)=>{ return pre+value},100);//128
/*在callback函數(shù)傳入pre(上一個值哥遮,初始值為initialValue||0)、value(當前值)占键、
i(當前值的索引)昔善、x(數(shù)組本身),進行迭代*/
- find() 找出第一個符合條件的數(shù)組成員并返回/findIndex() 返回下標
var c=[2,3,4,5,6,7];
c.find((a)=>{return a>5}) //6
/*返回第一個符合條件的值*/
一畔乙、對象遍歷
-
for循環(huán)
- for in
- 使用Object.keys()獲取下標