Safari new Date со строковыми значениями в разное время [дубликаты]

Я думаю, что просто в mysql, поскольку mysql встроенная функция, называемая now (), которая дает текущее время (время этой вставки).

Таким образом, ваш запрос должен выглядеть аналогично

CREATE TABLE defaultforTime(
    `creation_time`     DATETIME DEFAULT CURRENT_TIMESTAMP,
    `modification_time` DATETIME default now()
);

Спасибо.

1
задан Juneyoung Oh 16 January 2019 в 05:07
поделиться

2 ответа

Добавьте «Z» в строку date для часового пояса GMT/UTC

var c = new Date('2019-01-19 23:59:59'.replace(/\s+/g, 'T')+'Z');

. Даты ISO можно записать с добавлением часов, минут и секунд (ГГГГ-ММ-ДДГЧ: MM: SSZ): дата и время разделяются заглавными буквами T.

Время UTC определяется заглавной буквой Z.

Если вы хотите изменить время относительно UTC, удалите Z и вместо него добавьте + ЧЧ: ММ или -ЧЧ: ММ:

, например, var d = new Date ("2019-01-19T23 : 59: 59-09: 00" );

0
ответ дан Rahul Harmalkar 16 January 2019 в 05:07
поделиться

Safari ... Он не учитывает смещение часового пояса, когда создает экземпляр со строкой даты.

Добавление Z в конец также неплохо, но если вы хотите получить тот же результат с другими браузерами, следует рассчитать смещение часового пояса.

Вот что я сделал ...

// Before do this, check navigator.userAgent 
// and execute below logic if it is desktop Safari.

// Add Z is the convention, but you won't get any error even if do not add.
var c = new Date('2019-01-19 23:59:59Z'.replace(/\s+/g, 'T')) 

// It will returns in minute
var timeOffset = new Date().getTimezoneOffset();

// Do not forget getTime, if not, you will get Invalid date         
var d = new Date(c.getTime() + (timeOffset*60*1000))    

Открою этот пост до завтра в ожидании лучшего ответа. Спасибо.

0
ответ дан Juneyoung Oh 16 January 2019 в 05:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: