国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

JavaScript數組迭代方法

2024-05-06 16:35:31
字體:
來源:轉載
供稿:網友

最近工作中經常涉及到數據的處理,數組尤其常見,經常需要對其進行遍歷、轉換操作,網上的文章零零散散,不得已自己又找出紅寶書來翻出來看,順便記一筆,便于以后查詢。

數組常用的迭代方法

ECMAScript5為數組定義了5個迭代方法。每個方法都接受兩個參數:要在每一項上運行的函數fn和(可選的)運行該函數的作用域對象——影響 `this` 的值。

傳入這些方法中的函數(fn)會接收3個參數:item 、index 、array; 如:

array.forEach(function(item,index,array){  //do your staff here;},this)

根據使用方法的不同,這個函數執行后的返回值,可能會/不會影響方法中的返回值。

這5個迭代方法作用及返回值概覽如下:

ECMAScript5 Array元素迭代方法

 

方法名 方法作用  返回值
every() 針對數組中每一項元素運行指定函數 Boolean:若每一項都返回true,返回true;
filter() 針對數組中每一項元素運行指定函數, Array:   返回函數運行返回true的元素組成的新數組
forEach() 針對數組中每一項元素運行指定函數 null:  無返回值
map() 針對數組中每一項元素運行指定函數  Array:  返回函數運行后,得到到新新元素組成的新數組
some() 針對數組中每一項元素運行指定函數 Boolean: 若有任意一項執行函數后返回true, 則返回true

 

簡單來說:

every() 、some() 方法適合用于對數組元素進行條件判斷;

filter()  、map() 方法適合用于對數組進行條件篩選/再處理;

forEach() 方法對不對數組本身做操作,僅僅對數組元素的二次應用;

下面介紹下各個方法的使用栗子:

先來假設一個場景,你拿到了公司的本月工資清單,假設你的工資為9000;公司員工工資組成的數組為salaries=[8500,12000,9900,9000],

a. 想知道 你的工資是不是最低的;

b.想知道 有沒有人和你工資一樣多;

c.想知道  是不是所有人待遇都一樣;

d.想把大家的工資都換成K為單位的數據

var a,b,c;var your=9000;var salaries=[8500,12000,9900,9000]; a=slaries.some(function(item,index,array){  return item<9000});console.log(a);//true;恭喜你,還有人比你工資更低b=salaries.filter(function(item,index,array){  return item== your;})console.log(b);//[9000] 呵呵,有人跟你待遇一樣c=salaries.every(function(item,index,array){  return item==your; });console.log(c);//false .不是所有人都和你一樣待遇哦d=salaries.map(function(item,index,array){  return item/1000 });console.log(d);//[8.5,12,9.9,9]

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持VeVb武林網!


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 三亚市| 蒙阴县| 新闻| 伊春市| 台州市| 全椒县| 肥城市| 惠东县| 上林县| 永丰县| 岳阳县| 随州市| 板桥市| 获嘉县| 洪泽县| 灌南县| 昌黎县| 高陵县| 沙坪坝区| 屯昌县| 蚌埠市| 山阳县| 思茅市| 漳浦县| 成安县| 如皋市| 交口县| 六安市| 余庆县| 巴里| 从江县| 高州市| 华阴市| 阿尔山市| 临武县| 延寿县| 大丰市| 施秉县| 子长县| 云龙县| 吴旗县|