使用数组对象中的值对日期进行排序

时间:2017-03-30 06:51:58

标签: javascript

请帮我按照javacript中的值按升序排序日期。

var arr = [{
  "3/10/2017": 52,
  "3/11/2017": 58,
  "3/12/2017": 70,
  "3/13/2017": 76,
  "3/14/2017": 88,
  "3/15/2017": 105,
  "3/16/2017": 113,
  "3/17/2017": 115,
  "3/18/2017": 125,
  "3/19/2017": 136,
  "3/20/2017": 139,
  "3/22/2017": 8,
  "3/23/2017": 13,
  "3/24/2017": 29,
  "3/25/2017": 36,
  "3/26/2017": 38,
  "3/27/2017": 56,
  "3/28/2017": 58,
  "3/29/2017": 68,
  "3/7/2017": 8,
  "3/8/2017": 21,
  "3/9/2017": 35
}]

谢谢...

1 个答案:

答案 0 :(得分:0)

对象无法在javascript中排序,但您可以按如下方式重写代码:

var arr = [
  ["3/10/2017", 52],
  ["3/11/2017", 58],
  ["3/12/2017", 70],
  ["3/13/2017", 76],
  ["3/14/2017", 88],
  ["3/15/2017", 105],
  ["3/16/2017", 113],
  ["3/17/2017", 115],
  ["3/18/2017", 125],
  ["3/19/2017", 136],
  ["3/20/2017", 139],
  ["3/22/2017", 8],
  ["3/23/2017", 13],
  ["3/24/2017", 29],
  ["3/25/2017", 36],
  ["3/26/2017", 38],
  ["3/27/2017", 56],
  ["3/28/2017", 58],
  ["3/29/2017", 68],
  ["3/7/2017", 8],
  ["3/8/2017", 21],
  ["3/9/2017", 35]
]

arr.sort(function(a,b) {
  if (a[1] < b[1]) return -1;
  else if (a[1] > b[1]) return 1;
  return 0;
});