关联数组 能够 倒序 排列么?解决方案

关联数组 能够 倒序 排列么?

var obj = {"张三":{"手机":"123","电话":"456"},...,"李四":{"手机":"789","电话":"012"}}

能否倒序成如下

var obj = {"李四":{"手机":"789","电话":"012"},...,"张三":{"手机":"123","电话":"456"}}

reverse只对数组有效。

是否只能把键值分别保存到两个数组,然后两个数组reverse,再然后合并?
------解决方案--------------------
用递归就行

var obj = {"张三":4,"王五":5,"李四":6,"aaa":6};
var obj2 = {};
function reb()
{
for (var i in obj)
{
var t = obj[i];
delete obj[i];
reb();
obj2[i] = t;
break;
}
}
reb();

for (var i in obj2)
{
alert(i);
}


------解决方案--------------------
obj = {"张三":{"手机":"123","电话":"456"},"李四":{"手机":"789","电话":"012"}};
ar = [];
for(i in obj) ar.push([i, obj[i]]);
ar.sort(function(a, b) {
  if(a[1].手机 == b[1].手机) return 0;
  return a[1].手机 > b[1].手机 ? -1 : 1;
});
obj = {};
for(i in ar) obj[ar[i][0]] = ar[i][1];

alert(JSON.stringify(obj));
关联数组  能够 倒序 排列么?解决方案