① every :針對數組元素做些判斷,如果結果都為true 則返回的結果為true
1) 用法:數組.every(function(item,idx,arr){ return 判斷條件 })
2) Item表示數組中的數組項 idx表示數組項索引 arr表示循環的數組
3) 如果循環每一個數組 返回的判斷條件 結果都是true every函數返回的就是true 如果循環過程中有一個返回值為false, 則every函數返回值也是false
② Some:和every用法完全相同
1) 作用:some只要有一個返回值為true some的返回值就是true,如果返回值全是false some的返回值也是false
③ Filter:過濾器
1) 用法:數組.fliter(function(item,idx){ return 過濾條件 });
2) 如果數組項 滿足過濾條件,就保留下來,不滿足 就過濾掉,最后將保留下來的數組項 組成一個新數組 返回出來
④ Map:
1) 用法:數組.map(function(item,idx){ return 對數組項的操作代碼 });
2) 循環每一個數組項 對每一個數組項執行返回的操作代碼 將操作過之后的數組項 組成一個新數組 返回出來
⑤ forEach
1) 用法:數組.forEach(function(item,idx){ 循環體代碼 });
2) 作用:循環數組,執行循環體代碼
⑥代碼示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <script> // every :針對數組元素做些判斷,如果結果都為true 則返回的結果為true // 如果循環每一個數組 返回的判斷條件 結果都是true every函數返回的就是true 如果循環過程中有一個返回值為false, 則every函數返回值也是false var arr = [1,2,3,4,5,6,7]; var ret = arr.every(function(item,idx,arr){ // console.log(item+"---"+idx,arr); return item>1; }) console.log(ret); // some : 針對數組元素做些判斷,如果結果有一個為true 則返回的結果為true var ret1 = arr.some(function(item,idx,arr){ // console.log(item+"---"+idx,arr); return item>6; }) console.log(ret1); // filter : 針對數組元素做些判斷,滿足條件的元素,會組成一個新的數組,並且返回 var arr1 = ["張居正","張之洞","張三豐","王安石","王伯當","王羲之","李雲龍","意大利炮"]; //留下姓張的 var arr2 = arr1.filter(function(item,idx){ return item.indexOf("張")==0 }) console.log(arr2); // map : 返回一個新的數組 var arr3 = ["老蕭","allen","蕭宇"]; var arr4 = arr3.map(function(item,idx){ return item+"真帥"; }) console.log(arr4); // forEach : 沒有返回值,就是一個簡單的循環 var arr5 = ["馬雲","馬化騰","李彥宏","蔡崇信","張勇"]; arr5.forEach(function(item,idx){ console.log(idx+'---'+item); }) </script> </body> </html>