(JavaScript)日付を8ケタ文字列YYYYMMDDに変換する(+その逆)
概要
1234年5月6日を表すDateオブジェクト⇄"12340506"
このようにDateと8ケタ文字列を相互に変換する方法を紹介します。
コード
// DateをYYYYMMDD文字列に変換する function dateToYyyymmdd(date){ let n = date.getFullYear() * 10000; // YYYY0000 n += date.getMonth() * 100 + 100; // YYYYMM00 n += date.getDate(); // YYYYMMDD return ("000" + n).slice(-8); // 後ろから8桁を取り出す } alert(dateToYyyymmdd(new Date())); // 今日の日付で動作確認 // YYYYMMDD文字列をDateに変換する function yyyymmddToDate(s){ let y = s.slice(0, 4); // YYYY let m = s.slice(4, 6); // MM let d = s.slice(6, 8); // DD return new Date(+y, +m - 1, d); } alert(yyyymmddToDate("20201228")); // Mon Dec 28 2020 00:00:00 GMT+0900