84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
json = { o1 : { "zindex":9 }, o2 :{ "zindex":4 }, o3 : { "zindex":5 }, o4 :{ "zindex":1 }, o5 : { "zindex":1 }, o6 :{ "zindex":22 } } 求助问题 js怎样把JSON数据按zindex的大小从小到大循环显示出json的二级对象名称呢?
认证高级PHP讲师
Object.keys(json).sort((a,b) => json[a].zindex - json[b].zindex)
可以先把这些对象放到数组里,再用数组里面的比较去排序
谢邀
如下:
var json = { o1 : { "zindex":9 }, o2 :{ "zindex":4 }, o3 : { "zindex":5 }, o4 :{ "zindex":1 }, o5 : { "zindex":1 }, o6 :{ "zindex":22 } }; var jsonArr = []; for(let i in json){ // 变形 把json 转换成Array 方便排序 jsonArr.push(Object.assign({title: i }, json[i] )) } jsonArr = jsonArr.sort(function(a,b){ // 排序 > 升 < 降 return a.zindex > b.zindex }) for(let i = 0,l=jsonArr.length;i<l;i++){ // 输出 title console.log(jsonArr[i].title) }
可以先把这些对象放到数组里,再用数组里面的比较去排序
谢邀
如下: