日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JavaScript基础 - 24 (数组方法:every、some、forEach、map、filter、reduce)

發布時間:2023/12/8 javascript 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaScript基础 - 24 (数组方法:every、some、forEach、map、filter、reduce) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、參數為回調函數,function(數組中的項目,序號,數組本身){ },至少接收一個項目(item、value)參數

① every

?????????數組中所有內容都滿足回調函數的測試,返回值才為true,否則false,遇假停止,返回false

//value是數組中的每個元素的值,這個匿名函數會被數組循環調用var res = nums.every(function(value){//其中內容就是對值的判斷條件,例如驗證<50console.log(`當前判斷的值是:${value}`);return value<50;});//如果匿名函數中的判斷,都是真的,則最終的every的返回值就是真//有任何假的,則返回值就是假console.log(res);//判斷都是偶數var res1 = nums.every(function(value,index,array){//匿名函數共有3個參數:值 值的索引 當前數組。后兩個參數使用太少了console.log(`${value},${index},[${array}]`);return value%2 == 0;})

②some

????????數組中內容存在任意一個滿足回調函數的測試的,返回值為true, 否則false,遇真停止,返回

var teachers = [{name:"lily",age:39,married:true},{name:"tom",age:27,married:false},{name:"jack",age:22,married:true},{name:"lucy",age:36,married:false},];//判斷數組中,是否存在年齡>35的人var result = teachers.some(function(item,index,arr){return item.age>35});console.log(result?"有人年齡>35":"沒有年齡>35的");//判斷是否有已婚的var result = teachers.some(function(item){return item.married})console.log(result?"有已婚":"沒已婚");

③forEach

????????遍歷數組, 每個數組元素都被 回調函數處理

//數組的forEach方法:快速遍歷數組var emps = [{name:"丫丫",age:36},{name:"久久",age:19},{name:"明明",age:23},] //為每個年齡+1emps.forEach(function(item){item.age++;})//年齡翻一倍emps.forEach(function(item){item.age*=2})

④map

????????創建新數組,新數組由回調函數的返回值組成

//map:創建一個新的數組,數組的值都是回調函數的返回值組成的var names = ["lily", "lucy", "john", "tom"];//回調函數:依然具備三個參數,都是可選的var new_names = names.map(function(item,index,arr){return index + item.toUpperCase()});

⑤filter

????????創建新數組,滿足回調函數中的條件的元素, 會加入到新數組

var emps = [{name:"牛牛",gender:"男",age:20},{name:"丫丫",gender:"女",age:25},{name:"毛毛",gender:"女",age:29},{name:"婷婷",gender:"男",age:32}];//找出所有女性,放在新數組中var girls = emps.filter(function(item){return item.gender == "女"});//找出年齡<30的var young = emps.filter(function(item){return item.age<30});

2、reduce: 合并數組中的元素的內容,形成最終的結果

????????參數1:回調函數:function (合并后的結果,item,index,arr){ }

? ? ? ?參數2:合并結果的初始值

??????? emps.reduce( function(sum,item){return sum + item.salary},0 );

var emps = [{name:"lucy",salary:8000},{name:"mike",salary:5500},{name:"tom",salary:11000},{name:"jerry",salary:7900},];//計算所有工資的總和//forEach寫法:var sum = 0;emps.forEach(function(item){sum += item.salary})//reduce 寫法://參數1:回調函數:function (合并后的結果,item,index,arr){}//參數2:合并結果的初始值let result = emps.reduce(function(sum,item){return sum + item.salary},0);

總結

以上是生活随笔為你收集整理的JavaScript基础 - 24 (数组方法:every、some、forEach、map、filter、reduce)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。