數(shù)組的高階方法

<!DOCTYPE html>

<html>

<head>

? ? <meta charset="UTF-8">

? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>數(shù)組的高階方法</title>

</head>

<body>

? ? <script>

? ? ? ? let arr = [11,22,33,44,55,66,77,88,99,111,222,333,444]

? ? ? ? // 1.forEach()方法,用于循環(huán)遍歷整個數(shù)組

? ? ? ? // forEach()方法的回調(diào)函數(shù)中,可以傳兩個參數(shù):數(shù)組的每個元素 和 每一個元素對應(yīng)的下標(biāo)

? ? ? ? arr.forEach((val,index)=>console.log(index+'-'+val))

? ? ? ? // 2.filter()方法,用于過濾數(shù)組中的元素,返回過濾結(jié)果

? ? ? ? let arr1 = arr.filter(val => val % 2===0)

? ? ? ? console.log(arr1);

? ? ? ? let arr2 = arr.filter(val => val % 3===0)

? ? ? ? console.log(arr2);

? ? ? ? // 3.find()方法,用于獲取數(shù)組中滿足規(guī)則的第一個元素

? ? ? ? let num1 = arr.find(val=> val % 3===0)

? ? ? ? console.log(num1);

? ? ? ? // 4.findIndex()方法,用于獲取數(shù)組中滿足規(guī)則的第一個元素下標(biāo)

? ? ? ? let index1 = arr.findIndex(val => val % 3===0)

? ? ? ? console.log(index1);

? ? ? ? // 5.some()方法,用于表示數(shù)組中是否有滿足指定規(guī)則的元素,有返回true,一個都沒有返回false

? ? ? ? let isHave1 = arr.some(val => val>1000)

? ? ? ? console.log(isHave1);

? ? ? ? let isHave2 =arr.some(val => val===222)

? ? ? ? console.log(isHave2);

? ? ? ? // 6.every()方法,用于表示數(shù)組中是否所有元素都滿足指定的規(guī)則

? ? ? ? let isHave3 = arr.every(val => val > 10)

? ? ? ? console.log(isHave3);

? ? ? ? let isHave4 = arr.every(val => val % 2 ===0)

? ? ? ? console.log(isHave4);

? ? ? ? // 7.map()方法,用于將原始數(shù)組里面的數(shù)據(jù)根據(jù)指定的規(guī)則返回新的數(shù)組

? ? ? ? let arr3 = arr.map(r=>r%7)

? ? ? ? console.log(arr3);

? ? ? ? console.log('---------------------------------');

? ? ? ? let arr4 = [33,22,55,7,46]

? ? ? ? // 8.sort()方法,對數(shù)組的元素進行排序

? ? ? ? // 回調(diào)函數(shù)需要傳兩個參數(shù),返回參數(shù)1 - 參數(shù)2是升序,返回參數(shù)2 - 參數(shù)1是降序

? ? ? ? console.log(arr4);

? ? ? ? arr4.sort((a,b)=>a-b)

? ? ? ? console.log(arr4);

? ? ? ? arr4.sort((a,b)=>b-a)

? ? ? ? console.log(arr4);

? ? ? ? // 9.reduce()方法,統(tǒng)計數(shù)組中元素的和(從左到右)

? ? ? ? // a是數(shù)組中的一個數(shù),b從數(shù)組中第二個數(shù)開始,回調(diào)函數(shù)的返回值是a的下一次的值

? ? ? ? let sum1 = arr4.reduce((a,b)=>{

? ? ? ? ? ? return a+b

? ? ? ? })

? ? ? ? console.log(sum1);

? ? ? ? console.log('-------------------------------');

? ? ? ? // reduce()方法,可以給a設(shè)置一個起始值,這里的0就是a的起始值,b從數(shù)組的第一位開始。

? ? ? ? let sum2 = arr4.reduce((a,b)=>{

? ? ? ? ? ? return a+b

? ? ? ? },0)

? ? ? ? console.log(sum2);

? ? ? ? console.log('-------------------------------');

? ? ? ? // 10.reduceRight()方法,統(tǒng)計數(shù)組中元素的值(從右到左)

? ? ? ? let sum3 = arr4.reduceRight((a,b)=>{

? ? ? ? ? ? return a+b

? ? ? ? })

? ? ? ? console.log(sum3);

? ? </script>

</body>

</html>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容