最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript數(shù)組迭代方法

 更新時間:2017年03月03日 08:32:05   作者:Jason-str  
本文主要介紹了JavaScript數(shù)組迭代方法,具有很好的參考價值。下面跟著小編一起來看下吧

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

數(shù)組常用的迭代方法

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

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

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

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

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

ECMAScript5 Array元素迭代方法

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

簡單來說:

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

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

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

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

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

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

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

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

d.想把大家的工資都換成K為單位的數(shù)據(jù)

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]

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關文章

  • 淺談setTimeout 與 setInterval

    淺談setTimeout 與 setInterval

    實際上,setTimeout和setInterval的語法相同。它們都有兩個參數(shù),一個是將要執(zhí)行的代碼字符串,還有一個是以毫秒為單位的時間間隔,當過了那個時間段之后就將執(zhí)行那段代碼。不過這兩個函數(shù)還是有區(qū)別的
    2015-06-06
  • 如何通過javascript操作web控件的自定義屬性

    如何通過javascript操作web控件的自定義屬性

    這篇文章主要是對如何通過javascript操作web控件的自定義屬性進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所 幫助
    2013-11-11
  • 一起來學習JavaScript的BOM操作

    一起來學習JavaScript的BOM操作

    這篇文章主要為大家詳細介紹了JavaScript BOM操作,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • 深入理解 TypeScript Reflect Metadata

    深入理解 TypeScript Reflect Metadata

    這篇文章主要介紹了深入理解 TypeScript Reflect Metadata,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • JavaScript處理中文字符串的Base64編碼與解碼的兩種方法

    JavaScript處理中文字符串的Base64編碼與解碼的兩種方法

    這篇文章主要介紹了在 JavaScript 中處理中文字符串的 Base64 編碼與解碼,解釋了 Base64 編碼與中文字符沖突的原因,分別闡述了手動實現(xiàn)和使用TextEncoder和TextDecoder API 兩種方法,包括編碼和解碼的具體實現(xiàn)及示例,最后總結了兩種方法的適用場景
    2025-01-01
  • javascript 正則表達式(一)

    javascript 正則表達式(一)

    javascript 正則表達式使用實例,挺有意思的,既不是基礎也不是技巧就是解決例子。
    2010-05-05
  • javascript自執(zhí)行函數(shù)

    javascript自執(zhí)行函數(shù)

    本文主要介紹了javascript自執(zhí)行函數(shù)的相關知識。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • 微信小程序中實現(xiàn)微信支付完整步驟

    微信小程序中實現(xiàn)微信支付完整步驟

    這篇文章主要給大家介紹了關于微信小程序中實現(xiàn)微信支付的相關資料,微信小程序支付是一種常見的支付方式,實現(xiàn)起來相對較為復雜,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • 基于純JS實現(xiàn)多張圖片的懶加載Lazy過程解析

    基于純JS實現(xiàn)多張圖片的懶加載Lazy過程解析

    這篇文章主要介紹了基于純JS實現(xiàn)多張圖片的懶加載Lazy過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • 讓Firefox支持event對象實現(xiàn)代碼

    讓Firefox支持event對象實現(xiàn)代碼

    FireFox并沒有 window.event ,所以在FireFox下編寫事件處理函數(shù)是很麻煩的事。如果要得到 event 對象,就必須要聲明時間處理函數(shù)的第一個參數(shù)為event
    2009-11-11

最新評論

泗阳县| 东安县| 大连市| 确山县| 长岭县| 儋州市| 乌鲁木齐市| 彭泽县| 侯马市| 长宁县| 奇台县| 永兴县| 剑阁县| 温泉县| 东乌| 宣城市| 黔江区| 衢州市| 泗洪县| 海阳市| 勃利县| 高陵县| 丰镇市| 中西区| 永寿县| 灌阳县| 方山县| 穆棱市| 崇信县| 恩平市| 台山市| 盱眙县| 鄂州市| 合肥市| 肃宁县| 弋阳县| 江达县| 边坝县| 乌苏市| 靖远县| 龙里县|