2014-11-03 96 views
0

如果我有一个结构如何使用Array.filter

{ 
    "users": { 
     "John": [1 , 4, 5], 
     "Max": [2, 3, 7], 
     "Bill": [3, 5, 4] 
    } 
} 

阵列月拖欠3个月。我需要印出每个月最欠的人。示例

  • 比尔,马克斯,约翰 - 第一个月。
  • Bill,John,Max - 第二个月。
  • 等等。

我需要用JS来做。有没有简单的方法来使用Array.filter?

+0

你为什么想要?这不是'过滤器'的用处,这不是一个非常适合它的问题。 – meagar 2014-11-03 15:10:26

回答

0

var users = 
 
    [ 
 
     {name: "John", values: [1 , 4, 5]}, 
 
     {name: "Max", values: [2, 3, 7]}, 
 
     {name : "Bill", values: [3, 5, 4]} 
 
    ] 
 
function sortByMonth(monthNumber) { 
 
    return users.sort(function(a, b) { return b.values[monthNumber] - a.values[monthNumber];}); 
 
    }

这应该是你要找的内容,你必须真正改变自己的价值观到一个数组,但那么你可以通过每月所欠与sortByMonth功能量排序。

+0

不适合我。 – Alex 2014-11-03 15:27:53

+0

,我无法修改结构。 – Alex 2014-11-03 15:28:45

+0

你使用什么浏览器?我在Chrome中测试了这一点,传入0(第一个月)按照比尔,马克斯和约翰的顺序返回数组,例如在你的例子中。 – Shriike 2014-11-03 15:29:16

相关问题