Comments 32
Иногда (постоянно), я хочу чтобы в JS появилась встроенная функция
А формат вида
date()
, полностью аналогичная одноименной из PHP. Иначе любое форматирование дат это адские боль и унижение.А формат вида
YYYY-MM-DD hh:mm
убивает мои глаза и руки, сравните с
Y-m-d H:i
, так что очередная библиотека пройдет мимо меня. Хорошая попытка, но увы…-2
i — это мнимая единица?
+2
А формат вида YYYY-MM-DD hh:mm убивает мои глаза и руки, сравните с Y-m-d H:i, так что очередная библиотека пройдет мимо меня. Хорошая попытка, но увы…
Вроде же это стандарт такой. Есть подраздел Unicode, называемый CLDR, где описано, как в различных локалях форматировать числа, даты, названия стран и т.п. Так там даты именно в таком виде идут. Такой формат, пусть и более многословный, значительно удобнее, т.к. нужно меньше букв помнить, а для разной «ширины» компонент просто писать одну и ту же букву несколько раз.
+7
Формат вида Y-m-d H:i убивает мой мозг. Y — это, видимо, годы. Сколько их выведется, последняя цифра, две последние, все 4? m — это название месяца, его сокращенное название, его номер, его индекс от 0, август 08 или 8? Аналогично с d и с H. А i вообще ни с чем не ассоциируется.
+3
встройте phpjs.org/functions/date и ни в чём себе не отказывайте
0
Сталкивался с этой же проблемой где-то год назад, написал для себя клон PHP функции date, только с часовыми поясами не стал заморачиваться: github.com/gromo/javascript/blob/master/formatted-dates.html
0
Где же вы неделю назад были, когда я бился головой об… Date
+1
Пойду поищу свои белые тапочки что ли, если автор «очень стар» (-:
0
Просто оставлю это здесь:
momentjs.com
momentjs.com
-6
А который час сейчас в Японии?
$jin.time.moment().toOffset( '+09:00' ).toString( 'hh:mm' )
Неправильно, потому что часовой пояс — это не просто смещение. Это целая история изменения смещения относительно UTC, т.к.:
1. Летнее время. Причём, летнее время задаётся как правило не точной датой, а правилом «последнее воскресенье октября» и т.п. А ещё бывает двойное летнее время.
2. Изменение смещения на законодательном уровне.
3. Переход города из одной временной зоны в другую, в т.ч. из-за перехода города в другую страну.
Такая информация хранится в timezone database, и обычно эта база уже есть в браузерах (или они её берут из ОС), а текущая временная зона на уровне ОС задаётся так же в терминах местности. Браузер имеет доступ ко всей этой информации, но не предоставляет её разработчику, а это может быть очень критично в некоторых сценариях. Библиотеки вроде moment.js обычно тащат с собой tzdata, и даже пытаются эвристически определить временную зону, выставленную в настройках у пользователя, но, разумеется, у них это получается не всегда хорошо. Но делать-то больше нечего, лучше способов всё равно нет. Вот и слушай после этого обвинения в сторону «дырявой Java», «дырявого Flash», и «этих никому не нужных аплетов».
+4
А что вы скажете про эту альтернативу для moment? github.com/taylorhakes/fecha
+1
И еще такое есть phpjs.org/categories/datetime
-1
А что такое $jin?
0
и я… очень стар. Годы уже не те
'1984-08-04/'
Это же шутка, да?
0
Sign up to leave a comment.
$mol_time — работаем с датами и временем правильно