数字の配列を昇順で並び替える必要があり、方法を検索すると、以下のコードがでてきました。
function compareFunc(a, b) {
return a - b;
}
var num = [5, 3, 10, 6, 55];
num.sort(compareFunc);
console.log(num);
これを見たとき、a - b をreturnしている関数の中身がどのような処理をしているかよくわかりませんでした。
それもそのはず、この関数は 比較関数 という少々特殊なものでした。
比較関数
比較関数は二つの引数をとります。数値を戻り値とし、数値の正負、または0かどうかでソートの順序が変わります。
戻り値 | ソート順 |
---|---|
正の数 | val1 → val2 |
負の数 | val2 → val1 |
0 | 変更なし |