Вход

Просмотр полной версии : new Date() и аргумент в формате timestamp из MySQL


NapalmRain
24.12.2015, 11:05
Доброго всем времени суток!

Есть функция, которая получает из базы значение времени в формате строки Y-m-d h:i:s (2015-12-24 11:01:10)
Далее мне нужно выделить из этой строки только время.
Я это делаю следующим образом:
var date = new Date(result.datetime);
var sec = date.getSeconds()+'';
if (sec.length==1) sec = '0'+sec;
var min = date.getMinutes()+'';
if (min.length==1) min = '0'+min;
var hour = date.getHours()+'';
$(cell2).html(hour+':'+min+':'+sec);
В хроме данная конструкция работает успешно, проверяю на FireFox и наблюдаю
NaN:NaN:NaN
При выводе переменной date в алерт получаю invalid Date.

Прошу подсказать, как решить данную проблему.

рони
24.12.2015, 11:09
NapalmRain,
http://javascript.ru/Date.parse
браузеры по стандарту обязаны понимать только m-d-Y

рони
24.12.2015, 11:18
NapalmRain,
function formatTime(time)
{
return time.replace(/.*(\d\d:\d\d:\d\d)/,'$1')
}
var result = {'datetime' : '2015-12-24 11:01:10'};
alert(formatTime(result.datetime));
function formatTime(time)
{
return time.replace(/(\d+)-(\d+)-(\d+)/,'$2-$3-$1')
}
var result = {'datetime' : '2015-12-24 11:01:10'};
alert(new Date(formatTime(result.datetime)));

NapalmRain
24.12.2015, 12:37
рони, премного благодарен! Всё получилось.