javascript - js创建对象的排序问题
天蓬老师
天蓬老师 2017-04-10 17:50:05
[JavaScript讨论组]

我想生成一个对象,代码如下:

var o={}
for(i=1;i<10;i++){
    for(j=1;j<5;j++){
        o["aa_"+j+"_ss_"+i+"_oo"]= null
    }
}

console.log(o)

这样生成出来的排序是

aa_1_ss_1_oo: null
aa_1_ss_2_oo: null
aa_1_ss_3_oo: null
aa_1_ss_4_oo: null
aa_1_ss_5_oo: null
aa_1_ss_6_oo: null
aa_1_ss_7_oo: null
aa_1_ss_8_oo: null
aa_1_ss_9_oo: null
aa_2_ss_1_oo: null
aa_2_ss_2_oo: null
aa_2_ss_3_oo: null
aa_2_ss_4_oo: null
aa_2_ss_5_oo: null
aa_2_ss_6_oo: null
aa_2_ss_7_oo: null
aa_2_ss_8_oo: null
aa_2_ss_9_oo: null
aa_3_ss_1_oo: null
aa_3_ss_2_oo: null
aa_3_ss_3_oo: null
aa_3_ss_4_oo: null
aa_3_ss_5_oo: null
aa_3_ss_6_oo: null
aa_3_ss_7_oo: null
aa_3_ss_8_oo: null
aa_3_ss_9_oo: null
aa_4_ss_1_oo: null
aa_4_ss_2_oo: null
aa_4_ss_3_oo: null
aa_4_ss_4_oo: null
aa_4_ss_5_oo: null
aa_4_ss_6_oo: null
aa_4_ss_7_oo: null
aa_4_ss_8_oo: null
aa_4_ss_9_oo: null

而我想要的顺序是这样的

aa_1_ss_1_oo: null
aa_2_ss_1_oo: null
aa_3_ss_1_oo: null
aa_4_ss_1_oo: null

aa_1_ss_2_oo: null
aa_2_ss_2_oo: null
aa_3_ss_2_oo: null
aa_4_ss_2_oo: null

aa_1_ss_3_oo: null
aa_2_ss_3_oo: null
aa_3_ss_3_oo: null
aa_4_ss_3_oo: null

。。。。。。

请问朋友,该怎么改?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(3)
高洛峰

顺序一般是针对数组的,对象是没有顺序的。

var arr=[];
for(i=1;i<10;i++){
  for(j=1;j<5;j++){
    var o={};
    o["aa_"+j+"_ss_"+i+"_oo"]= null
    arr.push(o)
  }
}
console.log(arr)
高洛峰

对象内的排序你是改不了的
另外,你这个要求实在比较奇怪,你想要按照你的要求输出,你直接就照着你的列表输出就行了啊,这和对象内部属性排序没什么关系啊.

高洛峰

这是浏览器自动排序造成的 测试一下就知道原因了

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号