Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Дата в формате yyyy-MM-dd'T'HH:mm:ss.SSS'Z'

Автор вопроса: GarrettОтветов: 4

Мне нужно отформатировать дату как yyyy-MM-dd'T'HH:mm:ss.SSS'Z', как указано в REST API Parse для Facebook. Мне было интересно, каким будет самое легкое решение этой проблемы.

javascriptfacebookparse-platformdatedate-format

Ответы

Ответ 1 · рейтинг 109 · Robert Harvey

Вызовите метод toISOString():

var dt = new Date("30 July 2010 15:05 UTC");
document.write(dt.toISOString());

// Output:
//  2010-07-30T15:05:00.000Z

Ответ 2 · рейтинг 10 · jafarbtech

toISOString() вернет только текущее время UTC, а не текущее местное время. Если вы хотите получить текущее местное время в формате yyyy-MM-ddTHH:mm:ss.SSSZ, вы должны получить текущее время, используя следующие два метода.

Способ 1

console.log(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString());

Способ 2

console.log(new Date(new Date().getTime() - new Date().getTimezoneOffset() * 60000).toISOString());

Ответ 3 · xianshenglu

Добавьте еще один вариант, может быть, не самый легкий.

dayjs.extend(dayjs_plugin_customParseFormat)
console.log(dayjs('2018-09-06 17:00:00').format( 'YYYY-MM-DDTHH:mm:ss.000ZZ'))
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dayjs.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/plugin/customParseFormat.js"></script>

Ответ 4 · рейтинг -7 · Azee Md

Вы можете использовать класс javax.xml.bind.DatatypeConverter

DatatypeConverter.printDateTime и DatatypeConverter.parseDateTime

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы