Danny Delott Danny Delott - 2 months ago 7
Javascript Question

Javascript: Sort array of arrays by second element in each inner array

I have an array that looks like this:

const arr = [
[500, 'Foo'],
[600, 'bar'],
[700, 'Baz'],
];


I would like to sort this
arr
alphabetically by the second element in each inner array, ie:

[
[600, 'bar'],
[700, 'Baz'],
[500, 'Foo'],
]


Note the case insensitivity. Also, I would love to use lodash helpers if they come in handy here!

qxz qxz
Answer

Here is a concrete, working example, using Array.prototype.sort:

const arr = [
  [500, 'Foo'],
  [600, 'bar'],
  [700, 'Baz']
];

arr.sort((a,b) => a[1].toUpperCase().localeCompare(b[1].toUpperCase()));

console.log(arr);