首页 > 解决方案 > 如何在javascript中以特定顺序显示数据?

问题描述

我有 listOfChapters(见下面的代码)现在这个数组标题我使用 map 打印,这样打印就像这章第 1 章,第 2 章,第 3 章,第 -4 章,但我想按重量顺序打印怎么可能呢?

                                                                 weight
listOfChapters.map(x => x.title) // current output is chapter-1    1
                                                      chapter-2    3
                                                      chapter-3    2
                                                      chapter-4    0

            // Exprected output using weight sequence chapter-4    0
                                                      chapter-1    1
                                                      chapter-3    2
                                                      chapter-2    3
listOfChapters = [
    0: {id: 242, title: "Chapter - 1", weight: 1}
    1: {id: 261, title: "Chapter - 2", weight: 3}
    2: {id: 262, title: "Chapter - 3", weight: 2}
    3: {id: 263, title: "chapter - 4", weight: 0}
]

标签: javascriptarrays

解决方案


试试这个

listOfChapters.sort((a,b)=>a.weight-b.weight).map(p=>p.title)

listOfChapters.sort((a,b)=>a.weight-b.weight)将按重量升序对数组(变异)进行排序


推荐阅读