如何在javascript映射中保持序列?

如何在javascript映射中保持序列?,javascript,arrays,sorting,Javascript,Arrays,Sorting,我有我的数据地图如下 var myData = new Object(); myData[10427] = "Description 10427"; myData[10504] = "Description 10504"; myData[10419] = "Description 10419"; 但现在当我迭代myData时,我在chrome中没有得到相同的Sexunce,IE在firefox中也可以正常工作。它按键的升序进行迭代 for (var key in myData) {

我有我的数据地图如下

 var myData =  new Object();

 myData[10427] = "Description 10427";
 myData[10504] = "Description 10504";
 myData[10419] = "Description 10419";
但现在当我迭代myData时,我在chrome中没有得到相同的Sexunce,IE在firefox中也可以正常工作。它按键的升序进行迭代

for (var key in myData) {
  alert("key is"+key);
  }
我在警报中以升序获得输出,如
104191042710504


如何确保以与地图中插入的数据相同的顺序进行迭代?

对象在JS中是无序的。如果顺序很重要,请使用数组

var myData = [];
myData.push({ "number": 10427, description: "Description 10427" });

ES6映射保留插入顺序

set方法用于设置键值对

var myData = new Map();
myData.set(10427, "Description 10427");
myData.set(10504, "Description 10504");
myData.set(10419, "Description 10419");
地图键和值是使用

myData.forEach((value,key) => console.log(key, value));

这将按插入顺序打印键和值

使用字符串而不是数字。类似于
myDate['10427']=“Description 10427”。如果您只使用一个数字,它将被添加到数组中的该索引处。@putvande-drooks。传递给方括号表示法的值将在使用前进行字符串化。普通的物体总是杂乱无章的。哦,我的坏。。。我以为问题是关于数组的。误读。我不想要顺序,我想要与数据插入顺序相同的序列(迭代时)。如果您想要按插入顺序进行插入,那么不要对它们进行排序。我不会对它们进行排序。它们在chrome和ie中自动获取,但在Firefox中运行良好如果您希望它们按插入顺序存储,然后根据此答案将它们存储在数组中,而不对数组进行排序。“Map对象保存键值对并记住键的原始插入顺序。”
Console.log
it打印了插入顺序,但是在HTML中进行迭代时,它并没有保持插入顺序。