有一个数组顺序,其中指示了字段的正确顺序,并且有一个映射对象,其中字段的名称。如何使 Map 中的字段顺序正确,使其按顺序排列?
const order = ['hasTitle', 'hasSubmitButton', 'hasTooltip'];
const map = {
1: 'template',
7: 'hasTooltip',
5: 'hasTitle',
6: 'hasSubmitButton'
}
结果应该是:
map = {
5: 'hasTitle',
6: 'hasSubmitButton',
7: 'hasTooltip',
}
不幸的是,这对于一个对象是不可能的。今天的键顺序将始终为:
因此,即使您使用正确的键顺序重新创建对象,如果键是数字,它们仍将被重新排序:
查看详情:https ://2ality.com/2015/10/property-traversal-order-es6.html
因此,您需要使用 Map,或者更改键的格式。