JS中的.map()方法-取数组,.sort()方法-数据排序,.slice()方法-数据切片的使用

map sort slice

总的数据

以下面的数据为例来分析更加清晰

// 共10组数据
[{
    "name": "商家1",
    "value": 99
}, {
    "name": "商家2",
    "value": 102
}, {
    "name": "商家3",
    "value": 83
}, {
    "name": "商家4",
    "value": 49
}, {
    "name": "商家5",
    "value": 200
}, {
    "name": "商家6",
    "value": 152
}, {
    "name": "商家7",
    "value": 76
}, {
    "name": "商家8",
    "value": 23
}, {
    "name": "商家9",
    "value": 87
}, {
    "name": "商家10",
    "value": 223
}]

.sort()

// 总数据是this.allData,通过.sort()按照每一项value值进行排序
this.allData.sort((a, b) => {
        return a.value - b.value // 从小达大排序
        // 若要从大达小排序,则:return b.value - a.value
      })

.slice()

// 总数据是this.allData
// 将排好序的数据通过slice方法切成了5份
const showData = this.allData.slice(0, 5)
// 如下:
[{
    "name": "商家8",
    "value": 23
}, {
    "name": "商家4",
    "value": 49
}, {
    "name": "商家14",
    "value": 57
}, {
    "name": "商家7",
    "value": 76
}, {
    "name": "商家3",
    "value": 83
}]
// 可以通过控制start和end的值来处理数据,动态获取当前需要的数据
const showData = this.allData.slice(start, end)

.map()

// 通过map赋给一个新的数组
// 将切片后的数据showData通过map方法循环导出单个属性name及其值
const sellerNames = showData.map((item) => {
        return item.name
      })
// 假设是前面排好序的切成5个的name
```javascript
["商家8", "商家4", "商家14", "商家7", "商家3"]
// 分别对应:从小到大
[23, 49, 57, 76, 83]

上一篇:go语言切片slice


下一篇:Js数组 slice 用法大合集