按特定值按字母顺序对JavaScript对象数组进行排序

时间:2014-05-19 19:27:02

标签: javascript arrays sorting

我在JavaScript中有一个类似于

的数组
var mapobject = [
  ['Zob', 'orange', '1992'],
  ['Larry', 'cyan', '1990'],
  ['Adam', 'orange', '1994'],
  ['Zena', 'cyan', '1989'],
  ['Jeff', 'orange', '1900']
];

我希望按字母顺序按每个数组中的第二个值对其进行排序。

这就是我想要最终结果的样子

var mapobject = [
  ['Zob', 'orange', '1992'],
  ['Adam', 'orange', '1994'],
  ['Jeff', 'orange', '1900'],
  ['Larry', 'cyan', '1990'],
  ['Zena', 'cyan', '1989']
];

1 个答案:

答案 0 :(得分:0)

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

JSFiddle Demo

如果您希望结果按字母顺序按该值反向排序,只需切换返回值。

mapobject.sort(function (a, b) {
  if (a[1] < b[1]) return -1;
  if (a[1] > b[1]) return 1;
  return 0;
});
相关问题