Maison  >  Article  >  interface Web  >  Pourquoi `new Date()` interprète-t-il différemment les chaînes UTC dans Chrome et Firefox ?

Pourquoi `new Date()` interprète-t-il différemment les chaînes UTC dans Chrome et Firefox ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-01 07:29:30808parcourir

Why Does `new Date()` Interpret UTC Strings Differently in Chrome and Firefox?

Différences dans le comportement de new Date() entre Chrome et Firefox

Lors de la tentative de conversion d'une chaîne de date en un objet Date à l'aide du constructeur new Date(), le comportement peut varient selon les différents navigateurs. Cela est particulièrement évident lorsqu'il s'agit de chaînes de date UTC (temps universel coordonné).

Dans l'extrait de code fourni :

var date = new Date('2013-02-27T17:00:00');
alert(date);

Chrome interprète la chaîne d'entrée comme une heure locale, l'ajustant en fonction sur le fuseau horaire du navigateur. Dans ce cas, il interprète l'heure comme étant minuit heure locale le 28 février 2013.

Firefox, en revanche, analyse la chaîne comme une heure UTC et l'affiche en conséquence. Dans ce cas, il affiche correctement l'heure à 17h00 (GMT 7h00) le 27 février 2013.

Pour garantir un comportement cohérent entre les navigateurs, il est essentiel de fournir la chaîne de date au format UTC correct. format. Le format standardisé pour UTC est ISO 8601, qui inclut un suffixe « Z » pour indiquer l'heure UTC :

2013-02-27T17:00:00Z

En ajoutant «Z» à l'entrée chaîne, vous pouvez vous assurer que Chrome et Firefox interpréteront la chaîne de date comme une heure UTC, ce qui donnera le même résultat :

var date = new Date('2013-02-27T17:00:00Z');
alert(date);

Sortie :

mercredi 27 février 2013 17:00 :00 GMT 0700 (heure standard de l'Asie du Sud-Est)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn