Chrome, javascript Date и toLocaleString () - PullRequest
2 голосов
/ 25 июня 2010

Почему Chrome не указывает AM или PM при отображении даты с помощью date.toLocaleString()?Я получаю строку Fri Jun 25 2010 11:21:09 GMT+1000.Хотя IE возвращает почти ту же строку, но с AM по истечении времени.

Существует ли какой-либо метод объекта Date, который я могу вызвать, чтобы проверить, является ли он AM или PM, и, что более важно, проверьте, использует ли пользовательский язык 12-часовой цикл или 24-часовой?

Обновление. Обнаружил эту ошибку http://code.google.com/p/v8/issues/detail?id=135. Это очень старая версия, я надеялся, что будетобновления на нем.

1 Ответ

1 голос
/ 25 июня 2010

getHours возвращает значение в диапазоне от 0 до 23, поэтому вы можете легко определить, будет ли это до или после полудня.

Однако я не знаю какого-либо метода для получения универсальной строки локали. Это полностью зависит от браузера:

Содержимое строки зависит от реализации, но предназначен для представления даты в текущий часовой пояс в удобном, читабельная форма, соответствующая к соглашениям хозяина текущая локаль окружающей среды. - ECMAScript 5 , § 15.9.5.5

Вместо этого вы можете более или менее проверить настройку языка пользователя и создать строку самостоятельно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...