javascript - 如何在 JavaScript 中对按顺序编号的文件进行排序?

标签 javascript

我的文件命名如下:

X-1.pdf
X-2.pdf
X-3.pdf
.
.
.
X-15.pdf

当根据字符串值排序时,顺序如下:

X-1.pdf
X-10.pdf
X-11.pdf
.
.
.

假设这些文件存储在字符串数组中,我将如何对数组进行排序,以便文件以“预期”方式显示,即

X-1.pdf
X-2.pdf
.
.
.

最佳答案

您可以使用 localeCompare 并将 numeric 选项设置为 true:

console.log(
  ['X-11.pdf',
    'X-1.pdf',
    'X-9.pdf',
    'X-10.pdf',
    'X-2.pdf',
  ].sort((a, b) => a.localeCompare(b, 'en', {numeric: true }))
)

关于javascript - 如何在 JavaScript 中对按顺序编号的文件进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50779268/

相关文章:

javascript - 如何修改此 JavaScript 以限制数据源中项目的条目?

添加 24 小时的 Javascript 时间戳

javascript - Flash 与 Javascript

javascript - 删除表格行

javascript - 您如何知道 JavaScript float 何时不会被舍入?

javascript - 如何在 $.each 数组中查找下一个索引项

javascript - 使用 JavaScript 对 HTML 中的 Python/Flask 动态呈现的表进行排序

javascript - Creative SDK Image Editor UI 不显示自定义、可调整大小的文本(网络)

php - 像谷歌搜索一样在 div 中加载外部 url

javascript - Bootstrap tab.js 中的嵌套列表 [事件类未删除]