SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

【JavaScript】文字列の配列を長い順にソートする

問題

文字列の配列があります。

これをJavaScriptで、文字の長い順にソートしたいです。

sort

答え

Arrayのsortは並び替え方法を指定しないと辞書順にsortするけど、指定すればいろいろな並び替えができる。

//長い順
var words = ['test', '123', 'softel', 'example', 'gifuken', 'Hello world!']
words.sort(function(a, b) {return b.length - a.length;});

>>> ["Hello world!", "example", "gifuken", "softel", "test", "123"]

//辞書順
var words = ['test', '123', 'softel', 'example', 'gifuken', 'Hello world!']
words.sort();

>>> ["123", "Hello world!", "example", "gifuken", "softel", "test"]
//数値としてソート
var nums = [10, 99, 456, 65, 98, 321, 654, 888, 1212, 3654]
nums.sort(function(a, b) { return a - b; });

>>> [10, 65, 98, 99, 321, 456, 654, 888, 1212, 3654]

関連するメモ

コメント