初級 › Array.prototype.sort()が数値を文字列として並べ替える理由 › パターン2
Array.prototype.sort()が数値を文字列として並べ替える理由
比較関数を渡さないsort()は、number[]という型が付いていても要素を文字列に変換してUnicodeコードポイント順に並べ替えます。
1 const scores: number[] = [9, 80, 700, 6]; 2 scores.sort(_______________); ^ 3 console.log(scores);
出力: [ 6, 700, 80, 9 ]
空欄を埋めてコンパイルを通す
既定のsort()は文字列比較のため、"700"は"80"より前に来ます。数値順にしたい場合は比較関数が必須です。
次の問題