По крайней мере, в Firefox вы можете преобразовать объект Date в строку:
>>> JSON.stringify({'now': new Date()})
'{"now":"2012-04-23T18:44:05.600Z"}'
Это работает, потому что (в Firefox)Date
содержит метод toJSON
, который используется его сериализатором JSON. Однако это не является частью стандарта JSON, поэтому мне интересно, почему этот метод существует или, скорее, почему встроенный сериализатор JSON проверяет такой метод. Поскольку он не стандартизирован, вы все равно не можете безопасно использовать его без предварительного тестирования, понимает ли его встроенный сериализатор, и в противном случае используйте пользовательский (, такой как json2.js)