1. 程式人生 > >JavaScript陣列方法總結

JavaScript陣列方法總結

一.建立陣列的方式

1.使用Array建構函式

var color=new Array();    

注意:括號裡面引數可以有引數,若為一個數字,表示該陣列的長度,如果為多個數字或者一個(多個)非數字表示的是傳遞陣列中應該包含的值。

2.使用陣列字面量

var color=[];

二. 陣列的長度

三.陣列的遍歷

四。陣列的迭代方法

ECMAScript為陣列定義了五個迭代方法,每個方法都接收兩個引數:要在每一項上面執行的函式和執行該函式的作用域——影響this的值。傳入這些方法的函式會接收三個引數(陣列項的值,索引,陣列本身)

(1)forEach()  對陣列的每一項執行給定函式,該方法沒有返回值

(2)some(): 對陣列中的每一項執行給定函式,如果該函式對任一項返回true,則返回true

(3) every()  對陣列中的每一項執行都給定函式,如果該函式對每一項都返回true,則返回true

(4)filter() :對陣列的每一項執行給定函式,返回該函式會返回true的項組成的陣列。

對新陣列變化不會影響原陣列的改變

(5)map() :對陣列的每一項執行給定函式,返回每次函式呼叫結果所組成的陣列

之後修改生成的陣列不會影響原陣列

五. 迭代方法

ES5新增了兩個歸併陣列的方法:reduce()和 reduceRight(),這兩個方法都會迭代陣列所有的項,然後構建一個最終的值返回。

這兩個方法都接收兩個引數:一個在每一項上面呼叫的函式和(可選)作為歸併基礎的初始值。

給reduce和reduceRight這兩個方法的函式都接收四個引數值:前一個值,當前值,索引,陣列物件。這個函式返回的任何值都會作為第一個引數自動傳給下一項。第一次迭代發生在陣列的第二項上,因此第一個引數是陣列的第一項,第二個引數是陣列的第二項。

第一次執行回撥函式的時候,pre為1,cur為2,第二次,pre為3(1加2的結果),cur為3(陣列的第三項),依次類推,直到將陣列的每一項都訪問一遍,最後返回結果。

reduceRight()與reduce()使用一樣,只不過是從後往前遍歷。