У меня свидание всегда один час - парсинг даты JSON - PullRequest
2 голосов
/ 04 мая 2011

Я живу по Гринвичу, и сейчас +1 летнее время, что, вероятно, актуально ...

У меня есть веб-сервис, и он записывает дату, которая заканчивается в этом формате

'\ / Date (1234567) \ /'

Чтобы узнать, что это за дата, я просто оцениваю ее после удаления слешей.

Вот пример:

var jsonDate = 'Date(1304515498497)';

alert (new Date(1304515498497).toString() + "\n" +
           Date(1304515498497).toString()  + "\n" +
            eval(jsonDate));      

http://jsfiddle.net/yPCNE/1/

Если я поставлю новый перед ним, дата изменится, и это неправильно.Однако, в моем коде, если я удаляю New, я всегда получаю сегодняшнюю дату.Это может быть следствием использования библиотеки datejs.Из того, что я вижу, выполнение eval ('new' + date) приводит к тому, что время отстает ровно на один час, но alert () для обеих дат показывает, что они оба установлены на +1 GMT и идентичны, за исключениемодин час.Я не могу понять, откуда он.

Есть ли лучший способ сделать это?Я просто хочу преобразовать входящую дату JSON в обычную дату без каких-либо ошибок +1.

1 Ответ

0 голосов
/ 04 мая 2011

Если вы не поставите new перед ним, Date().toString() просто вернет текущее время, что бы вы ни указали в скобках.

alert (Date(1).toString() + "\n" +
       Date(42).toString()  + "\n" +
       Date("banana").toString());  //All return current time
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...