【发布时间】:2015-06-19 19:50:06
【问题描述】:
我有一个 Javascript 对象,其中包含多种属性类型,包括简单字符串、对象、对象数组……等等。
我想按照以下规则对键进行排序:
'像字符串或数字这样的简单属性总是出现在包含数组或对象的更复杂的属性之前'
我编写了以下函数,几乎可以实现我想要实现的功能,但它将数组转换为对象。这不是期望的行为。谁能帮我创建一个函数,将数组保存为数组,同时对数组中的对象进行排序?
function sort(object){
if (typeof object != "object" )
return object;
var keys = Object.keys(object);
keys.sort(function(a,b){
if (typeof(object[a])!== 'object') { return -1 } else { return 1 }
});
工作 jsfiddle:
http://jsfiddle.net/u01mn2py/3/
亲切的问候
【问题讨论】:
标签: javascript sorting object key