打字稿有序字典

Typescript Ordered Dictionary

我需要存储大量按索引排序的数据,类似于可编辑聊天 - 按时间排序并随机访问进行编辑。

项数比较大,"index"操作次数与"sort"操作次数差不多。我每次都不会阻止 "search" 或 "sort" 的计算,我会搜索更智能的集合。

我试图找到 Ordered Dictionary 集合,但我只看到了使用常规字典并计算 Object.values(dict).sort() 的解决方案,我相信如果 dict 很大并且您需要排序如果每 ~1sec.

TL;DR
TypeScript 中是否有 Ordered Dictionary 集合或类似的东西?

我想你要找的是Map。 Map 保证在您迭代它时保持插入顺序。

对象也可能对您有用。从 ES2015 开始,迭代顺序不完全是插入顺序,而是 it is predictable.

当键来自用户输入或它们不是已知形状的属性时,我更喜欢使用地图而不是对象。它类似于您可能熟悉的其他语言的字典与记录。