powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Некорректная работа Date.parse в chrome
4 сообщений из 4, страница 1 из 1
Некорректная работа Date.parse в chrome
    #39563325
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возьмём неправильную дату, 31 февраля
Код: javascript
1.
2.
var d = '2017-02-31';
console.log(d, Date.parse(d));

Мозилла напишет NaN. Хромой выведет 1488499200000, это 3 марта.
Если задать 32 февраля
Код: javascript
1.
2.
var d = '2017-02-32';
console.log(d, Date.parse(d));

То будет ошибка везде. Выяснил, что для любого месяца 31 число будет ОК, ошибки начинаются с 32 числа.

Как проверить, что дата корректна во всех браузерах? Сделал так, может есть другие пути...
Код: javascript
1.
2.
var d = '2017-02-31';
return d == new Date(d).toISOString().slice(0,10);
...
Рейтинг: 0 / 0
Некорректная работа Date.parse в chrome
    #39563326
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user89Возьмём неправильную дату, 31 февраля
Если мы будем предполагать невозможное, тогда вы ошиблись адресом. Обратитесь к астрологам, а не ко мне. (с)
...
Рейтинг: 0 / 0
Некорректная работа Date.parse в chrome
    #39563330
Фотография user89
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил,

пользователь может ввести вручную 31.02.2017 вместо 31.0 3 .2017
Вот и хочу проверить корректность даты, без toLocaleString, мало ли какая локаль у юзера...
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
function isRusDate(s) {
  try {
    s = s.trim();
    if (s.length != 10) {return false;}
    var d_arr = s.slice(-10).split('.');
    s = d_arr[2] +'-'+ d_arr[1] +'-'+ d_arr[0];
    return s == new Date(s).toISOString().slice(0,10);
  } catch(e) {return false;}
}
...
Рейтинг: 0 / 0
Некорректная работа Date.parse в chrome
    #39563346
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
user89мало ли какая локаль у юзера...
а как тогда интерпретировать 5/6/17 ?
пятое июня или шестое мая?
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Некорректная работа Date.parse в chrome
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]