javascript - 如何订购列表项并将某些内容推送到数组的开头
问题描述
我想订购我的动态数据,以便如果它包含特定字符串,则将其推送到列表项的顶部。然后把剩下的推进去。我很困惑如何去做。
所以我有类似的东西
因此,如果它包括概述,请将其推到前面,然后再推。我对如何做到这一点有点困惑。
解决方案
您可以使用 Array.prototype.sort() 方法
const values = [
{ value: 'foo' },
{ value: 'bar' },
{ value: 'baz' },
{ value: 'overview' },
]
function toFront(arr, search) {
return arr.sort(a => -a.value.includes(search))
}
console.log(toFront(values, 'overview'))
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort
推荐阅读
- java - 创建具有多个键和值的哈希图的多个 LinkedLists 的最佳方法?
- sql-server - Databricks 增量表与 SQL Server 增量表
- reactjs - 在 Mac 上将 UI (react.js) 打印为 PDF 已损坏
- keras - keras.backend 的 prod、cast 和 shape 功能是什么?
- sql - 用于比较 2 个主机 URL 的 SQL 查询
- python - 从 Django/Python 中的日期时间字段中减去时间
- machine-learning - 需要对缺失值的统计表达式进行解释
- android - Android:onViewCreated 中 Fragment 中检索到的视图为空
- android - 如何将多个图像的 URI 添加到 StickerView?
- python - Flask 脚本作为切换服务