Мета: Знайдіть, local time
а UTC time offset
потім побудуйте URL-адресу в наступному форматі.
Приклад URL: / Дії / Сон? Тривалість = 2002-10-10T12: 00: 00−05: 00
Формат заснований на рекомендації W3C: http://www.w3.org/TR/xmlschema11-2/#dateTime
Документація говорить:
Наприклад, 2002-10-10T12: 00: 00–05: 00 (опівдні 10 жовтня 2002 року, центральний час в літній час, а також східний стандартний час у США) дорівнює 2002-10-10T17: 00: 00Z, на п'ять годин пізніше 2002-10-10T12: 00: 00Z.
Отже, виходячи з мого розуміння, мені потрібно знайти свій місцевий час за новою датою (), а потім використовувати функцію getTimezoneOffset () для обчислення різниці, а потім приєднати її до кінця рядка.
1.Отримайте місцевий час з форматом
var local = new Date().format("yyyy-MM-ddThh:mm:ss"); //today (local time)
вихід
2013-07-02T09:00:00
2.Отримайте UTC за часом, зміщеним за годиною
var offset = local.getTimezoneOffset() / 60;
вихід
7
3.Будуйте URL-адресу (лише часова частина)
var duration = local + "-" + offset + ":00";
вихід:
2013-07-02T09:00:00-7:00
Вищенаведений висновок означає, що мій місцевий час - 2013/07/02 9:00, а різниця від UTC - 7 годин (UTC на місцевий час на 7 годин)
Поки що це, здається, працює, але що робити, якщо getTimezoneOffset () повертає негативне значення, наприклад -120?
Мені цікаво, як повинен виглядати формат у такому випадку, оскільки я не можу зрозуміти з документа W3C. Заздалегідь спасибі.