Замена даты - Помогите
Ребят есть функция замены даты и времени
function newDate(str) {return str.replace(/(\d\d)\.(\d\d)\.(\d\d)\s-\s/,'$1 ' + ['января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'][/\d\d\.(\d\d)\.\d\d\s-\s/.exec(str)[1] - 1] + ' 20$3 в ');} В результате полученную дату и время 01.01.13 - 23:19 заменит на 01 января 2013 в 23:19. Вопрос как сделать аналогичную функцию только для даты без времени? Заранее огромное спасибо) |
function newDate(str){ return str.replace(/(\d\d)\.(\d\d)\.(\d\d)/, function(str, dd, mm, yy){ return dd + ' ' + ['января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'][mm-1] + ' 20' + yy }); } alert(newDate('01.01.13')) |
Aetae, Спасибо но есть одно но если дата к примеру 1971, то добавляет 20.
Если убрать из кода 20 то 1971 год выводит нормально а вот 2014 выводит просто 14. |
zoOmer, ну а откудыть бы я угадал такие детавли?)
function newDate(str){ return str.replace(/(\d\d)\.(\d\d)\.(\d{2,4})/, function(str, dd, mm, yy){ return dd + ' ' + ['января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'][mm-1] + [' 20', ' '][yy.length>>2] + yy; }); } alert([ newDate('01.01.13'), newDate('01.01.1913') ]) |
А, подскажите как теперь сделать не даты а времени из скрипта в первом посте?
|
Часовой пояс GMT +3, время: 00:12. |