我需要存储相对大量的按索引排序的数据,类似于可编辑的聊天-按时间排序并具有随机访问权限以进行编辑。
项目的数量相对较大,“索引”操作的数量类似于“排序”操作的数量。我不会每次都避免计算“搜索”或“排序”,而是搜索更智能的集合。
[我试图找到有序词典集合,但是我只是看到了使用常规字典的解决方案,并且计算出Object.values(dict).sort()
太宽泛了,我相信,如果dict
很大,并且每隔1秒就要进行排序。
TL; DRTypeScript中是否有有序词典集合或类似内容?
我认为您正在寻找的是Map。保证Map在迭代时保持插入顺序。
对象也可能对您有用。自ES2015起,迭代顺序不完全是插入顺序,而是it is predictable。
当键来自用户输入或不是已知形状的属性时,我更喜欢在对象上使用地图。它类似于您可能熟悉的其他语言的“字典与记录”。