1.every方法數組
//邏輯判斷返回值爲一個Boolean值函數
every方法就是每個返回函數的返回值都是true的時候,才爲true,不然爲falsespa
var arr=[1,2,5,88,5,555,856,444]; var checkresult=arr.every((item,index,arr)=>{ return item>10 }) console.log(checkresult)//false
形參:item index arrcode
item爲數組中的每個值,blog
index爲索引值索引
arr爲數組回調函數
2.some方法it
於every方法恰好相反(就是返回值若是有一個爲true的時候則爲true)console
var arr=[1,2,5,88,5,555,856,444]; var checkresult=arr.some((item,index,arr)=>{ console.log(item,index,arr) return item>10 }) console.log(checkresult)//true
3.indexOfhelastIndexOffor循環
該方法是查找數組內指定元素的下標(索引值)的方法,若是頭則返回索引值 ,若是沒有則返回-1
indexOf是從前日後查找,返回的索引值是第一個查找的數的索引值
lastIndexOf則是從後往前找,返回的索引值則是從後開始找的第一個匹配到的索引值
var arr=[1,2,5,88,5,555,856,444,1]; console.log(arr.indexOf(1)) //0 console.log(arr.lastIndexOf(1)) //8
4.forEach方法
forEach方法爲遍歷數組,參數爲一個回調函數,回調函數有三個參數
方法和for循環的使用基本上一致
var arr=[1,2,5,88,5,555,856,444,1]; var sum=0; arr.forEach((value,index,arr)=>{ console.log(sum) sum+=value }) console.log(sum)
5.map方法的使用
便利數組,回調函數。返回值在操做以後生成一個新的數組,新數組索引結構與元數組一致,元數組保持不變
var arr=[1,2,5]; console.log(arr.map((value)=>{ return value*value })); //返回的是一個數組[1,4,25] //元數組不變[1,2,5]
6.filter方法
filter返回的是一個子集,用來判斷是否返回,返回是true就吧當前元素加入到返回數組中,false就不添加,元數組保持不變
必需要有return值
var arr=[1,2,5,6,67,8,9]; const arr2 =arr.filter((item)=>{ return item>5 })
console.log(arr)//[1,2,5,6,67,8,9] console.log(arr2)//[6,67,8,9]
7.reduce方法
便利數組,調用回調函數,將數組的元素合成一個值,元數組保持不變
var arr=[1,2,3,4,5,6,7,8,9] const arr2=arr.reduce((pre,nex,index,arr)=>{ console.log(pre,nex,index) return pre+nex },0) console.log(arr2)
reduce有兩個參數
第一個爲回調函數,第二個爲x(0,1)
若是不加第二個參數,那麼便利就會少一次,第一張就是沒有第二個參數的效果,第二章爲有第二個參數的效果
沒有第二個參數就會少一個
8.find方法
find查找的是value值,若是有的話就會返回value值
findIndex查找的是索引值,若是有的時候找的索引值,若是沒有就是返回的是-1
//查找元素 var arr = [1,2,5,6,9,56] const arre=arr.find((val,index,arr)=>{ console.log(val,index) return val>100 }) console.log(arre) // 只會返回一個值,返回第一個符合要求的值 // 找不到返回的是undefined var arr3 = [1,2,5,6,9,56] const arr4=arr.findIndex((val,index,arr)=>{ console.log(val,index) return val>1 }) console.log(arr4)