Javascript 映射未按正确顺序返回对象?
我有一个函数,可以循环数组,并将键和值对设置为映射对象。然后调用另一个函数,将对象中的数字乘以2。当我返回Map对象时,我注意到对象中的数字现在是按数字顺序排列的。根据规则,它应该保留数组的原始顺序,但实际上不是。我做错了什么Javascript 映射未按正确顺序返回对象?,javascript,loops,javascript-objects,Javascript,Loops,Javascript Objects,我有一个函数,可以循环数组,并将键和值对设置为映射对象。然后调用另一个函数,将对象中的数字乘以2。当我返回Map对象时,我注意到对象中的数字现在是按数字顺序排列的。根据规则,它应该保留数组的原始顺序,但实际上不是。我做错了什么 var-manArray=[5,2,7,4]; 函数操作(arr){ var myMap=newmap(); for(设i=0;i
var-manArray=[5,2,7,4];
函数操作(arr){
var myMap=newmap();
for(设i=0;i console.log(操纵(manArray))代码>JS中不保证对象键/属性顺序。对象本质上是无序的集合或属性(不同的JS实现可能具有不同的对象属性顺序)。如果您确实想保留对象顺序,您可以查看一个映射,它确实保证了顺序。myMap[key]=value代码>不是在地图中设置值的方式。这只是指定常规对象属性,就好像您根本没有使用贴图一样。使用以下命令:
myMap.set( key, value );
然后,如果在映射上迭代,则可以保证插入顺序
var-manArray=[5,2,7,4];
函数操作(arr){
var myMap=newmap();
for(设i=0;i }
为什么希望对象按特定顺序排列?对象键顺序不保证。这是事实。