最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

ES6 之reduce的基本介紹與使用

2023-02-28 10:44 作者:doubleyong  | 我要投稿

現(xiàn)在ES6語法應(yīng)用的特別廣泛,今天我們就來介紹下ES6中的reduce方法,它的用法非常強(qiáng)大,下面就跟著我一起來學(xué)習(xí)它吧



01
基本介紹


定義:對數(shù)組中的每個(gè)元素執(zhí)行一個(gè)自定義的累計(jì)器,將其結(jié)果匯總為單個(gè)返回值

形式:array.reduce((t, v, i, a) => {}, initValue)

?參數(shù)

    ? callback:回調(diào)函數(shù)(必選)

    ? initValue:初始值(可選)


    callback回調(diào)函數(shù)的參數(shù)

    ?????total(t):累計(jì)器完成計(jì)算的返回值(必選)

    ?????value(v):當(dāng)前元素(必選)

    ????? index(i):當(dāng)前元素的索引(可選)

    ????? array(a):當(dāng)前元素所屬的數(shù)組對象(可選)



過程(重點(diǎn)看)


  1. ? 以t 作為累計(jì)結(jié)果的初始值,不設(shè)置t則以數(shù)組第一個(gè)元素為初始值


  2. ?開始遍歷,使用累計(jì)器處理v,將v的映射結(jié)果累計(jì)到t上,結(jié)束此次循環(huán),返回t


  3. ? 進(jìn)入下一次循環(huán),重復(fù)上述操作,直至數(shù)組最后一個(gè)元素


  4. ? 結(jié)束遍歷,返回最終的t




02
如何運(yùn)行


假如運(yùn)行下段reduce()代碼:


callback 被調(diào)用四次,每次調(diào)用的參數(shù)和返回值如下表:




03
reduce方法的應(yīng)用


reduce() 的幾個(gè)強(qiáng)大用法:

數(shù)組求和


二維數(shù)組轉(zhuǎn)為一維數(shù)組



計(jì)算數(shù)組中每個(gè)元素出現(xiàn)的次數(shù)


方法一:


方法二:


數(shù)組去重

下面的方法,先要對數(shù)組進(jìn)行升序排列


相關(guān)面試題:

完成一個(gè)'flatten'的函數(shù),實(shí)現(xiàn)“拍平”一個(gè)多維數(shù)組為一維.

如:var testArr2 = [0, [1, [2, [3, [4, [5]]]]]];

ES6 之reduce的基本介紹與使用的評論 (共 條)

分享到微博請遵守國家法律
高碑店市| 家居| 子长县| 宿松县| 乌兰察布市| 吴桥县| 博爱县| 公主岭市| 库伦旗| 乐安县| 淮北市| 绥化市| 浑源县| 东光县| 盘山县| 三明市| 黔西县| 广元市| 额敏县| 扎赉特旗| 宁国市| 大足县| 繁峙县| 广河县| 耿马| 通榆县| 台安县| 阳西县| 忻城县| 盐津县| 板桥市| 铁力市| 河间市| 马尔康县| 策勒县| 堆龙德庆县| 福贡县| 常宁市| 新邵县| 昆山市| 闻喜县|