dateTimeParts()
function dateTimeParts(date) {
const formatter = new Intl.DateTimeFormat('en', {
year: 'numeric',
month: '2-digit',
day: '2-digit',
hour: '2-digit',
minute: '2-digit',
second: '2-digit',
hour12: false
});
return Object.fromEntries(
formatter
.formatToParts(date)
.map(it => [
it.type,
Number.isNaN(+it.value) ? it.value : +it.value
])
);
}
Usage:
const { year, month, day } = dateTimeParts(new Date());