NovichokJS,
нельзя изменить день, можно только дату!!! |
voraa,
:) |
Voraa, спасибо, но мне надо преобразовать один момент в моем коде только. Мне нужно формат просто задать правильный, выше я спросил это у Рони уже.
|
NovichokJS,
... исправленный вариант со switch 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() { return 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); |
Цитата:
Jan 15 2019 17:19:17... Потому что сейчас выводится вот в таком: 2019-01-10T15:19:17.000Z |
Цитата:
2019-01-15T15:19:17.000Z Мне же нужно в таком формате: Jan 15 2019 17:19:17 |
Цитата:
Цитата:
|
Цитата:
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); |
Цитата:
|
Цитата:
const getNewDate = initValue => { initValue = new Date(initValue); |
Часовой пояс GMT +3, время: 21:28. |