У меня есть этот код на странице 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, но он не может поддерживать несколько форматов, только один.