JavaScript_ECMA5數(shù)組新特性詳解

字號:


    下面小編就為大家?guī)硪黄狫avaScript_ECMA5數(shù)組新特性詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。
    var arr = [ 1, 2, 3, 4, 5, 4, 3, 2, 1 ];
    新加位置的方法: indexOf lastIndexOf
    1. 1個參數(shù)的時候表示傳值 返回索引位置(index從0開始)
    var index = arr.indexOf(4);
    alert(index); //3
    2. 2個參數(shù)的時候 第一個參數(shù)表示起始位置 第二個參數(shù)還是值
    var index = arr.indexOf(4,4);
    alert(index); //5
    3.他們查找數(shù)組比較的時候 '==='
    lastIndexOf
    var index = arr.lastIndexOf(2);
    alert(index); //7
    5個新加迭代的方法:
    1.every :對于數(shù)組每一個元素進行一個函數(shù)的運行 如果都返回true 最后則返回true 如果有一個返回false最后結(jié)果則返回false
    var result = arr.every(function(item , index , array){
    return item >= 1 ;
    });
    alert(result); //true
    2.filter :對于數(shù)組的每一個元素進行一個函數(shù)的運行 給定的函數(shù)去執(zhí)行 把過濾后的結(jié)果返回
    var result = arr.filter(function(item , index , array){
    return item > 2 ;
    });
    alert(result); //3,4,5,4,3
    3.forEach :循環(huán)數(shù)組每一項的值 并執(zhí)行一個方法
    arr.forEach(function(item, index, array){
    alert(item); //1,2,3,4,5,4,3,2,1
    });
    4.map 對于數(shù)組的每一個元素進行一個函數(shù)的運行 可以經(jīng)過函數(shù)執(zhí)行完畢后 把新的結(jié)果返回
    var result = arr.map(function(item, index, array){
    return item*10;
    });
    alert(result); //10,20,30,40,50,40,30,20,10
    5.some :對于數(shù)組每一個元素進行一個函數(shù)的運行 如果有一項返回true 最后則返回true 如果每一項都返回false最后結(jié)果則返回false
    var result = arr.some(function(item, index, array){
    return item >5 ;
    });
    alert(result); //false
    reduce reduceRight
    變量的起始位置不同
    前一個值 , 當(dāng)前值 , 索引位置 , array
    var result = arr.reduce(function(prev , cur , index , array){
    return prev + cur ;
    });
    alert(result) //25;
    var result = arr.reduceRight(function(prev , cur , index , array){
    return prev + cur ;
    });
    alert(result) //25;
    以上這篇JavaScript_ECMA5數(shù)組新特性詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考