午夜勾魂曲-午夜福利自怕-午夜福利在线观看6080-午夜福利院电影-国产精品毛片AV久久97-国产精品麻豆高潮刺激A片

關于JavaScript獲取時間函數及實現倒計時

2020-5-24    前端達人

JavaScript數組對象的迭代方法詳解

上一篇博客講到了數組的方法,當然里邊比較復雜的就是數組的迭代方法,因為涉及到了回調函數,所以這篇博客我們來詳細講解一下js數組迭代方法的使用。


1.forEach(funcrion(value,index,arr){}):對數組的每一項運行給定函數,這個方法不進行返回,所以一般用于讓數組循環執行某方法。

  var arr=[1,2,3,4,5,6];

    arr.forEach(function(val,index,arr){

        console.log(val,index,arr);

    })

    // 其中:

    // value:每一個數組項的值 必填項

    // index:每一個數組項對應的索引

    // arr:當前的數組


注意:forEach()方法不返回值,所以回調函數中使用return會打印出來undefined

2.map(funcrion(value,index,arr){}):對數組的每一項運行給定函數,它將返回執行函數后的結果組成的新數組。

 var aNum2 = [1.2, 1.8, 2.0, 4.3];

    console.log(aNum2.map(Math.floor()));// [1,1,2,4]

    

    var arr=[1,2,3];

    console.log(arr.map(function(val,index){

        return val*3

    }));// 3 6 9

    // 其中:

    // value:每一個數組項的值 必填項

    // index:每一個數組項對應的索引

    // arr:當前的數組

注意:map()方法有返回值,返回值為新的數組,所以可以直接再回調函數中return

3.every(funcrion(value,index,arr){}):對數組的每一項都運行給定函數,進項判斷,若對于每項執行函數都返回了true,則其結果為true。

 var arr=[10,20,30];

    console.log(arr.every(function(val){

        return val>20;

    }));// false

    

    console.log(arr.every(function(val){

        return val>0;

    }));// true

    

    // 其中:

    // value:每一個數組項的值 必填項

    // index:每一個數組項對應的索引

    // arr:當前的數組



注意:every()方法所有的數組項都符合判斷時返回true,否則返回false。

4.some(funcrion(value,index,arr){}):對數組的每一項都運行給定函數,進行判斷,若存在一項符合條件的數組項,則其結果為true。

    var arr=[10,20,30];

    console.log(arr.some(function(val){

        return val>20;

    }));// true

    

    console.log(arr.some(function(val){

        return val>0;

    }));// true

    

    console.log(arr.some(function(val){

        return val<0;

    }));// false

    

    arr.some(function(val){

        console.log(val<0);

    });//fasle false false

    // 其中:

    // value:每一個數組項的值 必填項

    // index:每一個數組項對應的索引

    // arr:當前的數組


注意:some()方法如果回調函數執行完會根據結果返回true或false,但是回調函數中打印判斷是,只會作為判斷條件的返回值,則會打印多遍。

5.fliter(funcrion(value,index,arr){}):對數組的每一項都運行給定函數,進行過濾,將符合條件的數組項添加到新的數組中,并返回新的數組。

   var aNum=[1,2,3,4];
    console.log(aNum.filter(function (num) {
        return num > 1;
    }));//[2,3,4,]
    aNum.filter(function (num) {
        console.log(num > 1);//true true true
    })

注意:filter()方法對數組項進行過濾,然后將符合條件的數組項添加到一個新的數組并返回,但是如果直接打印這個判斷條件,相當于打印的判斷條件的結果,只會返回true或者false。

6.ES6中新增的迭代方法

1.find():返回第一個符合傳入測試(函數)條件的數組元素。


  var aNum=[10,20,30,40];

    console.log(aNum.find(function (num) {

        return num > 19;

    }));//1

    console.log(aNum.find(function (num) {

        return num < 0;

    }));//undefined



2.findIndex():返回符合傳入測試(函數)條件的數組元素索引。


console.log(aNum.findIndex(function (num) { return num > 19; }));//3


3.includes():判斷一個數組是否包含一個指定的值。

總結:

forEach()與map()是一對,用于數組遍歷執行指定函數,前者不返回數組,后者返回 處理過的新數組。
every()與some()是一對,分別適用于檢測數組是否全部滿足某條件或者存在滿足的數組項,返回true或false。
filter()則是相當于過濾器的存在,過濾掉數組中不符合條件的數據,將符合條件的數組項添加到新數組,并返回。
————————————————
版權聲明:本文為CSDN博主「Mr_Han119」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_39155611/java/article/details/106294417


日歷

鏈接

個人資料

藍藍設計的小編 http://www.gerard.com.cn

存檔

主站蜘蛛池模板: 97亚洲狠狠色综合久久位 | 免费看毛片的网址 | 香蕉动漫库| 717影院理论午夜伦不卡久久 | 国产精品午夜福利在线观看 | 在线播放无码字幕亚洲 | 秋霞电影网视频一区二区三区 | 一区二区三区无码被窝影院 | 十分钟在线观看免费视频高清WWW | 麻豆国产精品久久人妻 | 国产亚洲精品久久久久久禁果TV | 色婷婷综合久久久久中文一区二区 | 99久久精品毛片免费播放 | 色色色999| 91素人约啪 | 好吊日视频在线 | 中文字幕乱码在线人视频 | 91黄色影院| 国精一区二区AV在线观看网站 | 国产精选视频在线观看 | CHRISTMAS农村夫妻HO | 精品久久日日躁夜夜躁AV | 精品国产自在天天线2019 | 亚洲国产综合另类视频 | 国产成人亚洲精品午夜国产馆 | 少妇高潮久久久久7777 | 国产亚洲精品久久精品录音 | 粗好大用力好深快点漫画 | 天天躁人人躁人人躁狂躁 | 折磨比基尼美女挠肚子 | 欧美高清videossexo | 轻轻挺进女教师的身体 | 国产成人免费a在线资源 | 又黄又猛又爽大片免费 | 超碰国产视频免费播放 | 九九99热久久999精品 | np高h肉辣一女多男 no视频在线观看 | 久久re这里视频只有精品首页 | 小p孩玩成年女性啪啪资源 小777论坛 | 日韩亚洲欧洲在线rrrr片 | 优菈的乳液狂飙天堂W98 |