Как я мог превратить эту строкуКак превратить строку даты в Javascript
Sun Apr 25, 2010 3:30pm
В действительный Дата в JavaScript (Minimal код, что я стремлюсь к здесь)?
Как я мог превратить эту строкуКак превратить строку даты в Javascript
Sun Apr 25, 2010 3:30pm
В действительный Дата в JavaScript (Minimal код, что я стремлюсь к здесь)?
Вы можете попробовать Datejs http://www.datejs.com/ Это не требует большого количества кодирования с вашей стороны, но для этого потребуется включить этот скрипт в ваш html.
Date.parse
почти получает то, что вы хотите. Он задыхается на am
/pm
части, но с некоторыми хакерство вы можете заставить его работать:
var str = 'Sun Apr 25, 2010 3:30pm',
timestamp;
timestamp = Date.parse(str.replace(/[ap]m$/i, ''));
if(str.match(/pm$/i) >= 0) {
timestamp += 12 * 60 * 60 * 1000;
}
Minicode выглядит следующим образом:
var s = 'Sun Apr 25, 2010 3:30pm';
Date.parse(s.slice(0,-2))+432E5*/pm$/.test(s);
Результат вашего подхода не гарантируется любой спецификации ,
ECMAScript Edition 3 является уместным и не указывает какие-либо форматы, которые может обрабатывать Date.parse. Кроме того, в спецификации указано, что когда Date.parse
предоставляется значение, которое не может быть получено ни Date.prototype.toString
, ни Date.prototype.toLocaleString
, результат зависит от реализации.
... значение производства
Date.parse
зависит от конкретной реализации, когда любое значение строки, которые не могут быть произведены в этой реализации методомtoString
илиtoUTCString
.
Не ожидайте последовательных результатов от Date.parse
при передаче в вашем формате даты, специфичном для данного региона.
Формат ISO-8601 может использоваться, и значение может быть проанализировано вашей программой. См. Также: Date constructor returns NaN in IE, but works in Firefox and Chrome
Хмм, я этого не знал. Я как-то доверял Firefox слепо на этом. XD – strager
Woo! Хотелось бы, чтобы он не умер, с jQuery невероятно легко работать. –