次のような配列があります:
arr = []
arr[0] = "ab"
arr[1] = "abcdefgh"
arr[2] = "abcd"
ソート後、出力配列は次のようになります。
arr[0] = "abcdefgh"
arr[1] = "abcd"
arr[2] = "ab"
descending
各要素の長さ順に並べたいです。
ベストアンサー1
使用できますArray.sort
配列をソートするメソッド。コールバック関数は、アイテムの長さをソート基準として使用する必要があります。
// sort ascending - shorter items first
arr.sort((a, b) => a.length - b.length);
// sort descending - longer items first
arr.sort((a, b) => b.length - a.length);
2 つの項目の長さが同じ場合は、追加の条件を指定できます。
// sort by length
// if equal then sort by dictionary order
["c", "a", "b"].sort((a, b) => a.length - b.length || a.localeCompare(b));