国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

數組函數有哪些用處

來源:懂視網 責編:小采 時間:2020-11-27 20:03:18
文檔

數組函數有哪些用處

數組函數有哪些用處:很多時候你可能很糾結,你應該使用reduce更多或者你不應該使用filter,更應該使用map;或者是for,為什么不使用forEach?是不是太糾結了。事實上呢?數組和數組的迭代函數對于初學者來說都會感到困惑,所以我將試著為每個簡化問題,最后提出的問題是:你想要
推薦度:
導讀數組函數有哪些用處:很多時候你可能很糾結,你應該使用reduce更多或者你不應該使用filter,更應該使用map;或者是for,為什么不使用forEach?是不是太糾結了。事實上呢?數組和數組的迭代函數對于初學者來說都會感到困惑,所以我將試著為每個簡化問題,最后提出的問題是:你想要

很多時候你可能很糾結,你應該使用reduce更多或者你不應該使用filter,更應該使用map;或者是for,為什么不使用forEach?是不是太糾結了。

事實上呢?數組和數組的迭代函數對于初學者來說都會感到困惑,所以我將試著為每個簡化問題,最后提出的問題是:你想要返回什么?

簡介

  • 為每個現有的東西返回一個東西:map()

  • 只返回一些現有的東西:filter()

  • 只返回一個東西:reduce()

  • 不要返回任何東西,而是對每個已存在的東西做一些事情:forEach()

  • 接下來一個個介紹這些數組相關的函數,并且使用一個非箭頭函數示例,另外同時用一個箭頭函數的示例。

    為每個現有的東西返回一個新東西:map()

    如果你有一個數組,燕且希望對該數組中的每一項執行一些操作,返回一個帶有新值的數組,那么使用map()是最合適不過。這里有一個簡單的函數,它接受數組并將數組每個項做翻倍運算:

    const originalArray = [1, 2, 3];const newArray = originalArray.map(function(item) { return item * 2;
    });
    console.log(newArray); // -> [2, 4, 6]

    使用ES6的箭頭函數:

    const originalArray = [1, 2, 3];const newArray = originalArray.map(item => item * 2);
    console.log(newArray); // -> [2, 4, 6]

    注意:使用新的箭頭函數語法,我們不需要使用functionreturn關鍵詞或者花括號{}。這是因為箭頭函數提供了像這樣的simple()函數的隱式返回。你可以從Wes Bos閱讀更多關于箭頭函數的信息。

    返回一個新數組,只包含一些符合條件的現有數組項:filter()

    filter()可能是最容易理解的數組函數,因為它的命名非常好。filter()接受一系列的值,對每個值執行一個函數或比較,然后返回一個新的數組。這些值通過它的測試(我們稱之為truthy值)。

    這里有一個示例,從一個數組中取出大于5的數,然后返回一個符合條件的新數組:

    const originalArray = [1, 9, 4, 2, 42];const newArray = originalArray.filter(function(item) { return item > 5;
    });
    console.log(newArray); // -> [9, 42]

    使用ES6的箭頭函數:

    const newArray = originalArray.filter(item => item > 5);

    只返回一個新東西:reduce()

    有時候你有一個系列的值,但你只想從它們當中返回一個新東西。數組中的reduce()函數會對數組中的每個項目執行一個函數或比較,然后對所謂的累加器執行一些操作。這是一個更容易用一個例子來描述的函數,因為它描述的術語和函數本身一樣讓人困惑。

    假設你有名字的數組,你想數一下Bob這個名字出現的次數:

    const originalArray = ["Alice", "Bob", "Charlie", "Bob", "Bob", "Charlie"];const numberOfBobs = originalArray.reduce(function(accumulator, item) { if (item === "Bob") { return accumulator + 1;
     } else { return accumulator;
     }
    }, 0);
    console.log(numberOfBobs); // -> 3

    使用ES6的箭頭函數:

    const numberOfBobs = originalArray.reduce((accumulator, item) => { if (item === "Bob") { return accumulator + 1;
     } else { return accumulator;
     }
    }, 0);

    正如你看到的一樣,這個箭頭函數并沒有節省我們的時間,因為我們必須為函數提供兩個參數,然后在返回之前有邏輯,所以我們仍需要花括號{}

    reduce()函數末尾的0是我們累加器的開始值,如果我們遇到的值是Bob,則添加1,否則我們將返回當前的累加器。如果你不返回任何東西,那么下一次運行該函數的時候將返回undefined

    對數組中每個值做一些事情,但不返回任何值:forEach()

    有時,你會有一系列想要處理的值,但不是需要跟蹤每個函數調用的返回值。這就是forEach()的意思。

    const originalArray = [1, 2, 3];
    originalArray.forEach(function(item) {
     doSomething(item);
    });

    使用ES6箭頭函數:

    originalArray.forEach( item => doSomething(item); );

    總結

    簡單而甜蜜的。這些是我們為每個函數提供的最簡單的示例,讓它盡可能地簡單,主要是便于理解何時應該使用它們。你可以用這些函數做大量的工作,而且每個函數都有一個高級形式,它也提供了當前的索引:

    arr.map((item, index) => {})
    arr.filter((item, index) => {})
    arr.reduce((accumulator, item, index) => {})
    arr.forEach((item, index) => {})

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    數組函數有哪些用處

    數組函數有哪些用處:很多時候你可能很糾結,你應該使用reduce更多或者你不應該使用filter,更應該使用map;或者是for,為什么不使用forEach?是不是太糾結了。事實上呢?數組和數組的迭代函數對于初學者來說都會感到困惑,所以我將試著為每個簡化問題,最后提出的問題是:你想要
    推薦度:
    標簽: 用途 有哪些 作用
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 伊人久久成人成综合网222 | 日韩精品不卡 | 欧美一区二区在线观看视频 | 亚洲 欧美 日韩 小说 另类 | 国产一区三区二区中文在线 | 91久久精品国产91久久性色也 | 久久久久女人精品毛片九一 | 国产欧美综合精品一区二区 | 亚洲色图日韩精品 | 国产欧美第一页 | 久久国产香蕉视频 | 国产日韩欧美高清 | 国产成人精品一区二区三区 | 欧美日韩网址 | 一区二区免费看 | 8x成人在线 | 成人亚洲欧美日韩在线 | 国内在线视频 | 亚洲国产成人久久综合野外 | 国产高清美女一级毛片久久 | 在线免费观看一区二区三区 | 午夜视频网| 亚洲欧美自拍偷拍 | 久久国内 | 国内精品伊人久久久久 | 亚洲素人在线 | 欧美高清a | 久久成人a毛片免费观看网站 | 精品伊人久久大线蕉色首页 | 天码毛片一区二区三区入口 | 欧美日韩一区二区三区久久 | 亚洲 欧美综合小说区图片区 | 欧美日韩国产精品自在自线 | 国产激情一级毛片久久久 | 国产又大又粗又猛又爽的视频 | 国产精品免费观在线 | 国产精品久久久久9999小说 | 国产精品人成人免费国产 | 91福利国产在线观一区二区 | 日本a中文字幕 | 九九热精品在线观看 |