詳談JS中數(shù)組的迭代方法和歸并方法
數(shù)組的迭代方法
ES5中為數(shù)組定義了5個(gè)迭代方法。每個(gè)方法都要接收兩個(gè)參數(shù):要在每一項(xiàng)上面運(yùn)行的函數(shù)和(可選的)運(yùn)行該函數(shù)的作用域?qū)ο?--影響this的值。
傳入方法中的函數(shù)會(huì)介紹三個(gè)參數(shù):1.數(shù)組項(xiàng)的值 2. 該項(xiàng)在數(shù)組的中位值 3. 數(shù)組對(duì)象本身;
every()和some()方法
every():對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定函數(shù),如果每一項(xiàng)都返回true,則返回true,否則false;
some():對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定函數(shù),如果至少有一項(xiàng)返回true,則返回true,否則false;
var arr=[1,2,4,5,3,1]; var one=arr.every(function(item,index,array){ return (item>2); }); console.log(one); //false var two=arr.some(function(item,index,array){ return (item>2); }); console.log(two); //true
filter()和map()方法
filter():對(duì)數(shù)組中的每一項(xiàng)給定函數(shù),返回值為true的項(xiàng)重新組成新的數(shù)組;
map():歲數(shù)組中的每一項(xiàng)給定函數(shù),返回每一項(xiàng)調(diào)用這個(gè)函數(shù)的結(jié)果;
//數(shù)組中可以被2整除的數(shù) var arr=[1,2,4,5,3,1]; var one=arr.filter(function(item,index,array){ return (item%2==0); }); console.log(one); //[2, 4] //數(shù)組中所有數(shù)的2倍 var two=arr.map(function(item,index,array){ return (item*2); }); console.log(two); //[2, 4, 8, 10, 6, 2]
forEach()方法
forEach():對(duì)方法中的每一項(xiàng)運(yùn)行給定函數(shù)。這個(gè)方法沒有返回值;
var a = ['a', 'b', 'c']; a.forEach(function(item,index,array) { console.log(item); }); // "a" // "b" // "c"
歸并方法
reduce()和reduceRight()方法
var nums=[1,2,3,4,5]; var sum=nums.reduce(function(prev,cur,index,array){ return prev+cur; }); alert(sum); //15 第一次 prev:1;cur:2; 第二次: prev:3(1+2) cur:3 以此類推 /******************************************************************************************/ var nums=[1,2,3,4,5]; var sum=nums.reduceRight(function(prev,cur,index,array){ return prev+cur; }); alert(sum); //15 第一次 prev:5;cur:4; 第二次: prev:9(5+4) cur:3 以此類推
以上這篇詳談JS中數(shù)組的迭代方法和歸并方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
JS自定義滾動(dòng)條效果簡單實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了JS自定義滾動(dòng)條效果的簡單實(shí)現(xiàn)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07小程序頁面動(dòng)態(tài)配置實(shí)現(xiàn)方法
這篇文章主要介紹了小程序頁面動(dòng)態(tài)配置實(shí)現(xiàn)方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-02-02javascript實(shí)現(xiàn)yield的方法
這篇文章介紹了javascript實(shí)現(xiàn)yield的方法,有需要的朋友可以參考一下2013-11-11如何用js判斷當(dāng)前是否是企業(yè)微信環(huán)境還是微信環(huán)境
這篇文章主要給大家介紹了關(guān)于如何用js判斷當(dāng)前是否是企業(yè)微信環(huán)境還是微信環(huán)境的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2024-04-04javascript window.open打開新窗口后無法再次打開該窗口問題的解決方法
這篇文章主要介紹了javascript window.open打開新窗口后無法再次打開該窗口問題的解決方法即無法再次打開窗口、第二次打開不了,需要的朋友可以參考下2014-04-04Bootstrap基本樣式學(xué)習(xí)筆記之按鈕(4)
篇文章主要介紹了Bootstrap學(xué)習(xí)筆記之按鈕基本樣式的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12