日時文字列 (yyyyMMddHHmmss) → Date オブジェクト
/**
* yyyyMMddHHmmss な文字列を Date オブジェクトに変換
* @param {string} strDate
*/
function stringToDate(strDate) {
const year = parseInt(strDate.substring(0, 4))
const month = parseInt(strDate.substring(4, 6))
const date = parseInt(strDate.substring(6, 8))
const hour = parseInt(strDate.substring(8, 10))
const min = parseInt(strDate.substring(10, 12))
const sec = parseInt(strDate.substring(12, 14))
return new Date(year, month, date, hour, min, sec)
}
Date オブジェクト→ 日時文字列 (yyyyMMddHHmmss)
/**
* Date オブジェクトを yyyyMMddHHmmss 形式の文字列に変換
* @param {Date} date 変換対象の Date オブジェクト
*/
function dateToString(date) {
const strYear = String(date.getFullYear()).padStart(4, '0')
const strMonth = String(date.getMonth()).padStart(2, '0')
const strDate = String(date.getDate()).padStart(2, '0')
const strHour = String(date.getHours()).padStart(2, '0')
const strMin = String(date.getMinutes()).padStart(2, '0')
const strSec = String(date.getSeconds()).padStart(2, '0')
return strYear + strMonth + strDate + strHour + strMin + strSec
}
※ padStart() は IE 未対応なので注意
参考ページ
- String.prototype.substring() - JavaScript | MDN
- String.prototype.padStart() - JavaScript | MDN
- Date - JavaScript | MDN