關於array中的map,filter,some,every,forEach方法
forEach()方法,從頭至尾遍歷陣列,為每個元素呼叫指定的函式。
1 2 3 4 5 6 7 8 9 |
|
map()方法
和forEach()類似,呼叫陣列的每個元素傳遞給指定函式,並返回一個數組,所以它和forEach()的區別在於,有一個返回值。不修改原陣列,返回的陣列長度和原陣列相同
1 2 3 4 5 6 7 |
|
filter()方法,返回的是呼叫陣列的一個子集。
1 2 3 4 5 6 7 |
b = a.filter( function (value) {
|
注意:如果使用map()方法,返回的是[false, false, false, true, true]
filter()會跳過稀疏陣列中缺少的元素,他的返回陣列總是稠密的。所以可以用一下方法來壓縮稀疏陣列的空缺。
1 2 3 4 5 6 7 |
b = a.filter( function (value) {
|
every()和some()
every()方法是隻有陣列中所以元素都滿足某個條件才會返回true;some()方法是隻要有滿足條件的值,就返回true。
以every()方法為例
1 2 3 4 5 6 7 8 9 |
|