Сообщение от NovichokJS
|
Мне же нужно в таком формате:
Jan 15 2019 17:19:17
|
https://learn.javascript.ru/intl
const getNewDate = initValue => {
const newValue = {
add(dateInterval, number) {
switch (dateInterval) {
case 'years':
initValue.setFullYear(initValue.getFullYear() + number);
break;
case 'months':
initValue.setMonth(initValue.getMonth() + number);
break;
case 'days':
initValue.setDate(initValue.getDate() + number);
break;
case 'hours':
initValue.setHours(initValue.getHours() + number);
break;
case 'minutes':
initValue.setMinutes(initValue.getMinutes() + number);
break;
case 'seconds':
initValue.setSeconds(initValue.getSeconds() + number);
break;
case 'milliseconds':
initValue.setMilliseconds(initValue.getMilliseconds() + number);
break;
}
return this;
},
subtract(dateInterval, number) {
switch (dateInterval) {
case 'years':
initValue.setFullYear(initValue.getFullYear() - number);
break;
case 'months':
initValue.setMonth(initValue.getMonth() - number);
break;
case 'days':
initValue.setDate(initValue.getDate() - number);
break;
case 'hours':
initValue.setHours(initValue.getHours() - number);
break;
case 'minutes':
initValue.setMinutes(initValue.getMinutes() - number);
break;
case 'seconds':
initValue.setSeconds(initValue.getSeconds() - number);
break;
case 'milliseconds':
initValue.setMilliseconds(initValue.getMilliseconds() - number);
break;
}
return this;
},
result() {
let formatter = new Intl.DateTimeFormat("en", {
month: "short",
year: 'numeric',
day: '2-digit',
hour: '2-digit',
minute: '2-digit',
second: '2-digit',
hour12: false
});
return formatter.format(initValue);
},
};
return newValue;
};
const res = getNewDate(new Date(2020, 0, 7, 17, 17, 17))
.add('minutes', 2)
.add('days', 8)
.subtract('years', 1)
.result();
// Output: ...Jan 15 2019 17:19:17.....
console.log(res);