JavaScript: 配列のソート 日付を並び替える
JavaScript で配列内の日付を昇順・降順にソート(並び替え)する方法を紹介します。
sort() メソッドに引数として比較関数を指定することで、 日付のソートが実現できます。
日付の「昇順」にソートする
次のサンプルコードは、配列内の日付を「昇順」にソートします。
let arr = ["2018/08/15", "2018/12/10", "2018/01/05"];
arr.sort(function(a, b){
return (a > b ? 1 : -1);
});
console.log(arr); // Array [ "2018/01/05", "2018/08/15", "2018/12/10" ]
三項演算子を使わない場合
三項演算子を使わずに、if 文で書くと次のようになります。
let arr = ["2018/08/15", "2018/12/10", "2018/01/05"];
arr.sort(function(a, b){
if (a > b){
return 1;
}else {
return -1;
}
});
console.log(arr); // Array [ "2018/01/05", "2018/08/15", "2018/12/10" ]
どちらの書き方でも、お好みで。
日付の「降順」にソートする
降順に並べかえる場合は、不等号の向きを逆にします。
let arr = ["2018/08/15", "2018/12/10", "2018/01/05"];
arr.sort(function(a, b){
return (a < b ? 1 : -1);
});
console.log(arr); // Array [ "2018/12/10", "2018/08/15", "2018/01/05" ]