момент преобразования объекта json в дату в javascript

#angular #momentjs

#угловой #momentjs

Вопрос:

я хочу преобразовать объект JSON в дату с моментом

я попробовал следующий код … но не сработал:

 let val = {'year':2019, 'month': 06, 'day':25};
const dob = moment(JSON.stringify(val), 'YYYY-MM-DD');
  

и мой ожидаемый результат:
‘2019-06-25’

есть предложения?

Комментарии:

1. Для месяца он основан на 0 или на 1? Если бы мы должны были сделать это в ванильном JavaScript (не в moment), он основан на 0

Ответ №1:

Вы можете использовать .format() метод для преобразования его в желаемый формат.

 let d = moment({'year':2019, 'month': (06 - 1), 'day':25}).format("DD-MM-YYYY")

console.log(d);  
 <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>  

Комментарии:

1. 1 и было бы неплохо также добавить ссылку на документ в ответ. momentjs.com/docs/#/parsing/object

Ответ №2:

Вы ожидаете этого:

 {"year":2019,"month":06,"day":25}
  

Для того, чтобы использовать этот формат

 YYYY-MM-DD
  

Но JSON.stringify выводит это, потому что number — это целые числа:

 {"year":2019,"month":6,"day":25}
  

Затем вы должны:

 moment(JSON.stringify(val), 'YYYY-M-D');
  

Комментарии:

1. у moment нет метода для скрытия объекта JSON на сегодняшний день ..?