初級 › Array.prototype.sort()が数値を文字列として並べ替える理由 › パターン3
Array.prototype.sort()が数値を文字列として並べ替える理由
比較関数を渡さないsort()は、number[]という型が付いていても要素を文字列に変換してUnicodeコードポイント順に並べ替えます。
1 const ids: number[] = [100, 21, 3]; 2 ids.sort(_______________); ^ 3 console.log(ids);
出力: [ 100, 21, 3 ]
空欄を埋めてコンパイルを通す
"100"、"21"、"3"を文字列として比較すると先頭の文字("1" < "2" < "3")で決まるため、この順のまま並びます。
次の問題