數組的迭代(循環)方法


① 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(itemidx){ 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>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM