Я хочу преобразовать Сингапур DateTime в любой заданный выбор часового пояса пользователем и отобразить DateTime из выбранного часового пояса (то есть Pacific/Wake (GMT+12: 00) ').
Поэтому я написал функцию ниже
function convertTrainerInSingaporeAvailableTimeToClientLocationTime() {
const { singaporeDate, singaporeTime } = getCurrentSingaporeDateAndTime(),
singaporeDatetime = new Date(
singaporeDate.replace(/(\d+)\/(\d+)\/(\d+)/, '$3-$1-$2') + 'T' + singaporeTime,
),
timeDifference =
8 + -1 * parseInt('Pacific/Wake (GMT+12:00)'.match(/([+-]\d+:\d+)/gi)[0].split(':')[0]),
timezoneDate = new Date(singaporeDatetime.getTime() - timeDifference * 60 * 60 * 1000),
options: Intl.DateTimeFormatOptions = {
timeZone: 'Pacific/Wake',
year: 'numeric',
month: '2-digit',
day: '2-digit',
hour: '2-digit',
minute: '2-digit',
second: '2-digit',
},
timezoneDatetime = new Intl.DateTimeFormat('en-GB', options).format(timezoneDate)
console.log(timeDifference)
console.log(singaporeDatetime)
console.log(singaporeTime)
console.log(singaporeDate)
console.log(timezoneDatetime)
console.log(new Date(singaporeDatetime.getTime()))
}
function getCurrentSingaporeDateAndTime() {
const date = new Date(),
singaporeTime = date.toLocaleTimeString('en-GB', { timeZone: 'Asia/Singapore', hour12: false }),
singaporeDate = date
.toLocaleDateString('en-GB', { timeZone: 'Asia/Singapore' })
.replace(/(\d+[/])(\d+[/])/, '$2$1')
return {
singaporeTime,
singaporeDate,
}
}
< /code>
Когда я отображаю результаты, я вижу, что есть разница в один час от ожидаемого ответа. Я пытался напрямую использовать SingaporedAtetime с LocalEString, чтобы получить дату и время соответственно, но это все еще не работает.
Пожалуйста, мне нужна помощь в том, как решить эту проблему.>
Подробнее здесь: https://stackoverflow.com/questions/795 ... with-javas
Попытка преобразовать сингапурское дату в любое датное время с датой часового пояса с JavaScript ⇐ Javascript
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Получить смещение часового пояса из имени часового пояса, используя Javascript
Anonymous » » в форуме Jquery - 0 Ответы
- 88 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как получить смещение часового пояса для определенного часового пояса?
Гость » » в форуме Javascript - 0 Ответы
- 73 Просмотры
-
Последнее сообщение Гость
-