在我的index.html 中,我从服务器接收数据,顺序如下:
[
{id: 1, keyOne: valueOne, keyTwo: valueTwo},
{id: 2, keyOne: valueOne, keyTwo: valueTwo},
{id: 3, keyOne: valueOne, keyTwo: valueTwo},
{id: 4, keyOne: valueOne, keyTwo: valueTwo}
]
Run Code Online (Sandbox Code Playgroud)
我想按降序对其进行排序,例如:
[
{id: 4, keyOne: valueOne, keyTwo: valueTwo},
{id: 3, keyOne: valueOne, keyTwo: valueTwo},
{id: 2, keyOne: valueOne, keyTwo: valueTwo},
{id: 1, keyOne: valueOne, keyTwo: valueTwo}
]
Run Code Online (Sandbox Code Playgroud)
我已经尝试了 Stackoverflow 的多种方法,但找不到完美的匹配。我怎样才能做到这一点?
使用数组的sort()方法很容易做到这一点:
const input = [
{id: 1, keyOne: "valueOne", keyTwo: "valueTwo"},
{id: 2, keyOne: "valueOne", keyTwo: "valueTwo"},
{id: 3, keyOne: "valueOne", keyTwo: "valueTwo"},
{id: 4, keyOne: "valueOne", keyTwo: "valueTwo"}
];
let sortedInput = input.slice().sort((a, b) => b.id - a.id);
console.log(sortedInput);Run Code Online (Sandbox Code Playgroud)
.as-console {background-color:black !important; color:lime;}
.as-console-wrapper {max-height:100% !important; top:0;}Run Code Online (Sandbox Code Playgroud)
注意slice()方法的用法,调用slice()等于调用slice(0)对原始数组进行浅拷贝。这样,当sort()被调用时它不会改变原始input数组。
| 归档时间: |
|
| 查看次数: |
8045 次 |
| 最近记录: |