问题描述
let ids = [ '184','085','241','086','087','165' ];
和一个空对象-let data = {};
我正在遍历数组并将每个元素设置为对象的属性:
ids.forEach(id => {
data[id] = '';
});
我希望数据对象是:
{ '184': '','085': '','241': '','086': '','087': '','165': '' }
但是当我console.log(data)
时,我发现属性的顺序混乱了,data
是:
{ '165': '','184': '','087': '' }
我也尝试过使用这种方法遍历数组:
for (let id of ids) {
data[id] = '';
}
但是结果却是混乱的。我需要知道如何如何正确设置属性,更重要的是,什么导致了此问题。
解决方法
您需要使用+
来保持插入顺序。对象键按插入顺序排序,数字键除外,按升序排序。
Map