Столкнулся с проблемой в элементарном, на первый взгляд, скрипте. Дату получаю из JSON, поэтому в примере просто показываю строку, в виде которой мне эта дата приходит. Далее перевожу ее в тип Date, потом объявляю локализацию для месяцев с разделителем в виде запятой. Далее выделяю в отдельные переменные день и месяц. Месяц подставляю локализованный из своей строки с месяцами. Потом вывожу день и месяц. И все работает во всех браузерах, кроме Safari. В сафари день выводится как "NaN", а месяц "undefined".
Пример на jsfiddle: https://jsfiddle.net/ArtHodorev/xpvt214o/317995/
HTML:
<div id="block">
<span id="day"></span> <span id="month"></span>
</div>
JS:
var dateBase = "2018-06-07 11:50:42";
var dateDate = new Date(dateBase);
var monthArr = 'января,февраля,марта,апреля,мая,июня,июля,августа,сентября,октября,ноября,декабря'.split(',');
var dateMonth = monthArr[dateDate.getMonth()];
var dateDay = dateDate.getDay();
var day = $('#day');
var month = $('#month');
day.html(dateDay);
month.html(dateMonth);
CSS:
body {
background: #20262E;
padding: 20px;
font-family: Helvetica;
}
#block {
background: #fff;
border-radius: 4px;
padding: 20px;
font-size: 25px;
text-align: center;
transition: all 0.2s;
margin: 0 auto;
width: 300px;
}
Подскажите, в чем может быть проблема?
Шаблон yyyy-MM-dd не является официально валидным для конструктора Date. Некоторые браузеры его поддерживают, но как видно не все.
Пример решения (date.js):
var dateBase = "2018-06-07 11:50:42";
var dateDate = Date.parseExact(dateBase, "yyyy-MM-dd hh:mm:ss");
moment.js:
var dateBase = "2018-06-07 11:50:42";
var dateDate= moment(dateBase).format("yyyy-MM-dd hh:mm:ss")
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Никак не могу добавить свой пин в карту, дефолтные норм отображаются
Не понимаю что происходит в gltf лоадереПри загрузке стабильно выдает ~30(+/- 10шт) ошибок
Ребят уже битый час бьюсь, что не так со скриптом ? Собственно при разрешении меньше 992px окна браузера, должно отрабатывать событиеПо клику...