首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >$.each不按给定顺序呈现JSON

$.each不按给定顺序呈现JSON
EN

Stack Overflow用户
提问于 2014-12-12 05:12:13
回答 1查看 112关注 0票数 2

这是服务器上的JSON

代码语言:javascript
复制
"bids":{"51200512":{"bidAmt":"Rs.63,736,494.00","date":"2014 12 12 09:49:59 AM","bidder":"Amit"},

"69120512":{"bidAmt":"Rs.734,294.00","date":"2014 12 12 09:51:29 AM","bidder":"Tata India Pvt Ltd"},

"66560256":{"bidAmt":"Rs.87,265.00","date":"2014 12 12 09:52:31 AM","bidder":"Tata Telecommunication servoices <i>asas</i> Telec"},

"69120768":{"bidAmt":"Rs.63,737.00","date":"2014 12 12 09:52:05 AM","bidder":"Tata India Pvt Ltd"},

"69120256":{"bidAmt":"Rs.63,736.00","date":"2014 12 12 09:50:50 AM","bidder":"Tata India Pvt Ltd"}}}

在火狐中,它显示了正确的顺序。

代码语言:javascript
复制
Rs.63,736,494.00
Rs.734,294.00
Rs.87,265.00
Rs.63,737.00
Rs.63,736.00

但在铬中:

代码语言:javascript
复制
Rs.63,736,494.00
Rs.734,294.00
Rs.63,736.00
Rs.734,294.00
Rs.63,737.00

下面是我解析JSON的方法

代码语言:javascript
复制
 $.each(bids,function(k,v){
       _tbl+="<tr bd='y'><td><a href=\""+_this.options.context+"/profile/"+k+"\">"+v.bidder+"</a><br/><small><span class='timeago' title='"+v.date+"'>"+v.date+"</span><small></td><td>"+v.bidAmt+"</td></tr>";
 });}

$("#showBidModel table").append(_tbl);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-12 05:21:23

Javascript不能保证对象的顺序。见Does JavaScript Guarantee Object Property Order?

Chrome碰巧用数字键按排序顺序迭代它们。如果需要显式排序,请使用数组。

代码语言:javascript
复制
"bids": [
    {"id": "69120512", "bidAmt":"Rs.734,294.00","date":"2014 12 12 09:51:29 AM","bidder":"Tata India Pvt Ltd"},
    {"id": "66560256", "bidAmt":"Rs.87,265.00","date":"2014 12 12 09:52:31 AM","bidder":"Tata Telecommunication servoices &lt;i&gt;asas&lt;/i&gt; Telec"},
    ...
]
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27437256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档