【发布时间】:2016-01-14 09:16:57
【问题描述】:
所以我最近遇到了一个我似乎无法解决的问题。
假设我在 javascript 中定义了一个对象数组,并希望用户能够选择对该数组进行排序的值。 当我知道深度时,我对数组进行排序没有问题,因为它类似于
array = array.sort(function (a, b) {
return b["foo"]["bar"] - a["foo"]["bar"];
});
但是当深度未知时,我不完全知道如何去做。我尝试将键放在一个字符串中并使用 eval(),但这似乎不起作用。
我在 JSFiddle 上设置了一个快速示例,以更好地说明我的意思 http://jsfiddle.net/DakotaSv/c35bj02w/2/
如果有人能想到解决方案,我将不胜感激!
(感谢 PatrickD,here is the working JSFiddle,感谢任何可能觉得它有用的人!)
【问题讨论】:
-
您可能正在寻找某种“对象中的递归搜索” 来查找键?
-
最好是创建一个对象结构来处理这种复杂性,而不仅仅是一个单行。
标签: javascript jquery arrays sorting multidimensional-array