У меня есть этот код на странице HTML:
alert(JSON.stringify(new Date()));
Я включаю последнюю версию json2.js (версия 2009-09-29) на мою страницу для поддержки старых браузеров без JSON.stringify (). У меня также есть jquery-1.3.2.js. Я верю в новые браузеры с собственной поддержкой JSON, они просто переходят к собственной функции JSON.
Вот результаты, которые я получаю в разных браузерах:
IE 8 on Windows XP: "2010-02-07T21:39:32Z"
Chrome 4.0 on Windows XP: "2010-02-07T21:39:59Z"
Firefox 3.0 of Windows XP: "2010-02-07T21:40:41Z"
Chrome 4.0 on Ubuntu linux: "2010-02-07T21:41:49Z"
Firefox 3.0 on Ubuntu linux: "2010-02-07T21:42:44Z"
Chrome 4.0 on Mac OSX: "2010-02-07T21:43:56Z"
Safari on Mac OSX: "2010-02-07T21:45:21Z"
Firefox 3.5 on Mac OSX: "2010-02-07T21:44:10.101Z"
Обратите внимание на последний? Он содержит миллисекунды, и ни один из остальных не делает. У меня не установлено FF3.5 ни на каких других системах, но я предполагаю, что они будут иметь те же результаты.
Что я могу сделать, чтобы все даты на всех платформах были одинаковыми? Моя бэкэнд-служба REST может быть настроена на строку формата для десериализации дат JSON, но она не может поддерживать несколько форматов, только один.