1.forEch():遍歷數組,不改變原數組,只是遍歷數組
var arr = [1,2,3,4]; arr.forEach((item,index,arr) => { console.log('當前值:'+item); //依次輸出1,2,3,4 console.log('當前值對應的索引:'+index); //依次輸出0,1,2,3 console.log('原數組:'+arr); //依次輸出4個[1,2,3,4] })
2.map():遍歷數組,返回一個新數組,不改變原數組code
var arr = [1,2,3,4]; var arr2=arr.map((item,index,arr2) => { if(item == 1) { return item }else { return item+1 } }) console.log(arr2); //輸出[1,3,4,5]
3.filter():遍歷數組過濾符合條件的篩選,並返回一個新數組,不改變原數組索引
var arr = [1,2,3,4]; var arr2=arr.filter((item,index,arr2) => { return item > 2; }) console.log(arr2);//輸出[3,4]
4.indexOf(),lastIndexOf():it
var arr = [1,2,3,4,2]; console.log(arr.indexOf(2)); //輸出1 console.log(arr.lastIndexOf(2));//輸出4
5.reduce():讓數組的先後兩項進行某種計算,而後返回其值,並繼續計算,不改變原數組,返回計算的最終結果,從數組的第二項開始遍歷console
var arr = [1,2,3,4]; var arr2=arr.reduce((result,item,index,arr2) => { console.log(result); console.log(item); return result * item; }) //依次輸出1,2,2,3,6,4 console.log(arr2); //輸出24
6.some():遍歷數組每一項,有一項返回true,則中止遍歷,結果返回true。不改變原數組。
7.every():遍歷數組每一項,每一項返回true,最終結果爲true.有一項返回false,中止遍歷,結果返回爲false。不改變原數組。ast
這兩組同爲對數組的操做,而且會改變數組的自己的長度及內容。
不一樣的是 push()、pop() 是從數組的尾部進行增減,unshift()、shift() 是從數組的頭部進行增減。
1.push()和unshift()
向數組的 尾部/頭部 添加若干元素,並返回 數組的 新長度;foreach
var arr = [1,2]; arr.push(3,4); //返回 arr 的新長度 4 arr; // arr = [1,2,3,4]; arr.unshift(0,0.5); // 返回 arr 的新長度 6 arr; // arr = [0,0.5,1,2,3,4];
2.pop()和shift();
從數組的 尾部/頭部 刪除1個元素(刪且只刪除1個),並返回 被刪除的元素;空數組是繼續刪除,不報錯,但返回undefined;遍歷
arr.pop(); //返回 4; arr ; // arr = [0,0.5,1,2,3]; arr.pop(); //返回 3; arr ; // arr = [0,0.5,1,2]; arr.shift(); // 返回 0 ; arr ; // arr = [0.5,1,2] PS: pop()和shift() 不接受傳參,即便傳了參數也沒什麼卵用~~; arr.pop(3) ; // 返回 2;永遠返回最後一個; arr ; // arr = [0.5,1]; arr.shift(1); // 返回 0.5; 永遠返回第一個; arr ; // arr = [1]; arr.pop() ; // 返回 1; arr ; // arr = []; arr.shift() // 返回 undefined; arr ; // arr = [];