0

I have an nested array unsorted after sorting it should be sorted depending on 2nd item of sub-array

var unsorted = [["tag_17",0,4],["tag_18",13,18],["tag_435",6,11]];
var sorted = [["tag_18",13,18], ["tag_435",6,11], ["tag_17",0,4]];
Abdullah Ahmed
  • 75
  • 1
  • 13

2 Answers2

3

var a = [
  ["tag_17", 0, 4],
  ["tag_18", 13, 18],
  ["tag_435", 6, 11]
];

a.sort(sortFunction);
console.log(a);

function sortFunction(a, b) {
  if (a[0] === b[0]) {
    return 0;
  }
  return (a[1] < b[1]) ? 1 : -1;
}

You can read the documentation about sort.

Milan Chheda
  • 8,159
  • 3
  • 20
  • 35
3

var unsorted = [["tag_17",0,4],["tag_18",13,18],["tag_435",6,11]];

sorted = unsorted.sort((a,b) => {
    return b[1] - a[1];
} )

console.log(sorted);
Fahad Nisar
  • 1,723
  • 12
  • 18