namespace DateUtil { const fmt = { yyyy : ( date ) : string => { return date . getFullYear ( ) + '' ; } , YY : ( date ) : string => { return `${ date . getFullYear ( ) }` . slice ( 2 , 4 ) ; } , MM : ( date ) : string => { return ( '0' + ( date . getMonth ( ) + 1 ) ) . slice ( - 2 ) ; } , dd : ( date ) : string => { return ( '0' + date . getDate ( ) ) . slice ( - 2 ) ; } , hh : ( date ) : string => { return ( '0' + date . getHours ( ) ) . slice ( - 2 ) ; } , mm : ( date ) : string => { return ( '0' + date . getMinutes ( ) ) . slice ( - 2 ) ; } , ss : ( date ) : string => { return ( '0' + date . getSeconds ( ) ) . slice ( - 2 ) ; } , w : ( date ) : string => { return [ '日' , '月' , '火' , '水' , '木' , '金' , '土' ] [ date . getDay ( ) ] ; } , } ; param date param formatStr return export const format = ( date , formatStr ) : string => { for ( const key in fmt ) { formatStr = formatStr . replace ( key , fmt [ key ] ( date ) ) ; } return formatStr ; } ; param localDate return export const getJaDate = ( localDate ) : Date => { const offSet = localDate . getTimezoneOffset ( ) * 60 * 1000 + 1000 * 60 * 60 * 9 ; return new Date ( localDate . getTime ( ) + offSet ) ; } ; } export default DateUtil ;