欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript數(shù)組迭代方法

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

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

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

ECMAScript5為數(shù)組定義了5個迭代方法。每個方法都接受兩個參數(shù):要在每一項上運(yùn)行的函數(shù)fn和(可選的)運(yùn)行該函數(shù)的作用域?qū)ο蟆绊?`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ù)組中每一項元素運(yùn)行指定函數(shù) Boolean:若每一項都返回true,返回true;
filter() 針對數(shù)組中每一項元素運(yùn)行指定函數(shù), Array:   返回函數(shù)運(yùn)行返回true的元素組成的新數(shù)組
forEach() 針對數(shù)組中每一項元素運(yùn)行指定函數(shù) null:  無返回值
map() 針對數(shù)組中每一項元素運(yùn)行指定函數(shù)  Array:  返回函數(shù)運(yùn)行后,得到到新新元素組成的新數(shù)組
some() 針對數(shù)組中每一項元素運(yùn)行指定函數(shù) Boolean: 若有任意一項執(zhí)行函數(shù)后返回true, 則返回true

簡單來說:

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

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

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

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

先來假設(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)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關(guān)文章

  • javascript中Class(類)的介紹和使用方法

    javascript中Class(類)的介紹和使用方法

    在JavaScript中類(Class)是一種創(chuàng)建對象的模板,它可以用來定義對象的屬性和方法,這篇文章主要給大家介紹了關(guān)于javascript中Class(類)的介紹和使用方法的相關(guān)資料,需要的朋友可以參考下
    2024-05-05
  • iframe子頁面與父頁面在同域或不同域下的js通信

    iframe子頁面與父頁面在同域或不同域下的js通信

    根據(jù)iframe中src屬性是同域鏈接還是跨域鏈接,通信方式也不同,下面有個不錯的示例,需要的朋友可以參考下
    2014-05-05
  • 淺析JavaScript如何解決跨域問題并手寫一個jsonp

    淺析JavaScript如何解決跨域問題并手寫一個jsonp

    跨域是指瀏覽器為了安全性,實(shí)施的同源策略,同源策略要求,只有協(xié)議、域名和端口號完全相同的網(wǎng)頁,才能共享資源,本文整理了一些常用的跨域解決方法,希望對大家有所幫助
    2024-03-03
  • bootstrap中selectpicker下拉框使用方法實(shí)例

    bootstrap中selectpicker下拉框使用方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于bootstrap中selectpicker下拉框使用的相關(guān)資料,文中通過示例介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • 最新JavaScript判斷是否是360瀏覽器方法

    最新JavaScript判斷是否是360瀏覽器方法

    這篇文章主要給大家介紹了關(guān)于最新JavaScript判斷是否是360瀏覽器方法的相關(guān)資料,我們在做項目的時候有用到判斷不同瀏覽器的這個需求,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-07-07
  • JavaScript 嵌套函數(shù)指向this對象錯誤的解決方法

    JavaScript 嵌套函數(shù)指向this對象錯誤的解決方法

    JavaScript對于全局函數(shù)內(nèi)的this綁定為全局對象,而對于嵌套函數(shù)也采用了相同的解釋。
    2010-03-03
  • 一文詳解JSON.parse和JSON.stringify的用法

    一文詳解JSON.parse和JSON.stringify的用法

    Json.stringify()和toString()兩者雖然都可以講目標(biāo)值轉(zhuǎn)為字符串,但是還是有本質(zhì)區(qū)別的,下面這篇文章主要給大家介紹了關(guān)于JSON.parse和JSON.stringify用法的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • 微信小程序?qū)崿F(xiàn)底部彈出框

    微信小程序?qū)崿F(xiàn)底部彈出框

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)底部彈出框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 原生js實(shí)現(xiàn)自由拖拽彈窗代碼demo

    原生js實(shí)現(xiàn)自由拖拽彈窗代碼demo

    這篇文章主要為大家詳細(xì)介紹了原生js實(shí)現(xiàn)彈窗拖拽代碼demo,以及在實(shí)現(xiàn)js彈窗拖拽效果需要注意的事項,感興趣的小伙伴們可以參考一下
    2016-06-06
  • 判斷文字超過2行添加展開按鈕,未超過則不顯示,溢出部分顯示省略號

    判斷文字超過2行添加展開按鈕,未超過則不顯示,溢出部分顯示省略號

    這篇文章主要介紹了判斷文字超過2行添加展開按鈕,未超過則不顯示,溢出部分顯示省略號,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04

最新評論