在JS中嵌套值Reduce

早上好,在array.map之后,我有一個數(shù)組,其中包含相同的賦值和一些嵌套的評級:

const assignments = [
    {
      name: "assignmentOne",
      difficultyRating: 1,
      funRating: 2
    },
    {
      name: "assignmentOne",
      difficultyRating: 3,
      funRating: 4
    },
    {
      name: "assignmentOne",
      difficultyRating: 5,
      funRating: 1
    }
]

現(xiàn)在我想得到總難度/樂趣評分,如下所示:

//Both the difficulty and fun rating in the same record
const assignmentsTotal = [
    {
      name: "assignmentOne",
      totalDifficultyRating: 9,
      totalFunRating: 7
    }
]

//Difficulty and fun rating as separate records
const assignmentsDifficultyTotal = [
    {
      name: "assignmentOne",
      totalDifficultyRating: 9
    }
]
const assignmentsFunTotal = [
    {
      name: "assignmentOne",
      totalFunRating: 7
    }
]

我很有信心最好的方法就是使用reduce方法。經(jīng)過一番挖掘之后,唯一接近我想要實現(xiàn)的是下面的文章,但是我不能讓它正常工作。有沒有一個好的方法從上面的起點開始,或者在使用reduce方法之后使用array.map創(chuàng)建單獨的數(shù)組會更好嗎?

? 最佳回答:

如果要在數(shù)組中查找相同的“name”對象,下面應(yīng)該可以:

const reducer = assignments.reduce((total, current) => {
    return { name: current.name, difficultyRating : total.difficultyRating + current.difficultyRating, funRating : total.funRating + current.funRating } });

如果要按名稱對對象進(jìn)行分組,請查看lodash groupby函數(shù)。一般來說,lodash在所有array/obj功能中都非常方便。

主站蜘蛛池模板: 亚洲av无码成人影院一区 | 无码少妇一区二区三区| 久久免费精品一区二区| 亚洲一区二区三区高清不卡| 亚洲国产一区明星换脸| 亚洲av无码一区二区三区天堂 | 精品一区二区三区波多野结衣| 亚洲一区二区三区免费| 日本精品一区二区三本中文| 亚洲AV无码一区二区大桥未久 | 国产成人精品a视频一区| 最新中文字幕一区| 麻豆国产一区二区在线观看| 无码精品一区二区三区免费视频 | 在线视频一区二区| 亚洲日韩激情无码一区| 亚洲熟女一区二区三区| 久久精品国产一区二区| 国产伦精品一区二区免费| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 无码中文人妻在线一区二区三区 | 久久久无码精品人妻一区| 中文字幕人妻第一区| 精品无码AV一区二区三区不卡| 日韩电影一区二区| 亚洲日韩激情无码一区| 久久精品一区二区国产| 日韩精品无码一区二区三区不卡 | 国产一区二区中文字幕| 亚洲国产成人一区二区精品区 | 国产成人精品久久一区二区三区av| 男人的天堂亚洲一区二区三区| 日韩精品一区二三区中文| 国产一区二区三区在线免费 | 久久se精品一区二区影院| 国产在线观看一区二区三区精品| 视频一区视频二区日韩专区| 中文字幕国产一区| 国产精品一区二区av| 97精品一区二区视频在线观看| 麻豆精品人妻一区二区三区蜜桃 |