L'API de YouTube renvoie un objet JSON avec une gamme de vidéos. Chaque objet vidéo a une date publiée formatée comme "2012-01-11T20: 49: 59.415Z". Si j'initialise un objet de date JavaScript à l'aide du code ci-dessous, l'objet renvoie "la date non valide".
var dt = new Date( "2012-01-11T20:49:59.415Z" );
5 Réponses :
Si vous n'avez besoin que d'une partie de la date (par exemple, si vous ne vous souciez pas du fuseau horaire ou du fuseau horaire), vous pouvez simplement dénicher la partie de la chaîne de date off. P>
J'essaie de générer une date relative, comme "il y a 21 jours" en tirant des millisecondes de l'objet de date.
C'est facile lorsque vous avez terminé avec le rendu de la date via le script ISO 8601. Faites une nouvelle date mondiale d'analyser l'objet de date ISO 8601, puis soustrayez la "date postée" de la "date actuelle" ...
Essayez d'utiliser Javascript's Par exemple: P> date.parse (chaîne) Code>
et le date code> constructeur A> qui prend le nombre de millisecondes depuis l'époque. La fonction "parse" devrait accepter une date ISO8601 valide sur n'importe quel navigateur.
var d = new Date(Date.parse("2012-01-11T20:49:59.415Z"));
d.toString(); // => Wed Jan 11 2012 15:49:59 GMT-0500 (EST)
d.getTime(); // => 1326314999415
Cela ne fonctionne pas dans les navigateurs plus âgés. Je teste cela sur iOS 4.2.1 et iOS 5.0.1. IOS 4 échoue, tandis que iOS 5 fonctionne.
var dt = "2012-01-11T20:49:59.415Z".replace("T"," ").replace(/\..+/g,"") dt = new Date( dt );
J'ai fini par trouver une solution à http://zetafleet.com/blog / JavaScript-DateParse-for-ISO-8601 . On dirait que la date est dans un format appelé 'ISO 8601.' Sur les navigateurs antérieurs (Safari 4, chrome 4, soit 6-8), ISO 8601 n'est pas pris en charge, alors date.parse ne fonctionne pas. Le code référencé à partir de l'article de blog lié étend la classe de date actuelle pour prendre en charge ISO 8601. P>
Cette page a du code qui analyse des dates YouTube (ISO 8601) dans un objet de date: P>
http://webcloud.se/log/javascript-and-iso-8601 / p>
archive.org Sauvegarde de la même façon p>
Cela fonctionne pour moi, même si je n'ai pas beaucoup testé cela. P>