Formatage des dates en JavaScript : atteindre le format aaaa-mm-jj
Le formatage des dates en JavaScript peut être un défi, surtout lorsque vous essayez de atteindre un format spécifique. Par exemple, si vous avez une date au format « Dim. 11 mai 2014 » et que vous souhaitez la convertir en « 2014-05-11 », comment pouvez-vous procéder ?
Une approche, comme démontrée dans le code fourni, implique de diviser la date en ses composants. Cependant, cette méthode ne parvient pas à transformer la date au format souhaité. Pour résoudre ce problème, nous pouvons exploiter une méthode plus efficace exploitant la méthode toISOString intégrée de JavaScript.
La méthode toISOString convertit un objet date en une représentation sous forme de chaîne au format ISO 8601, qui se trouve être "aaaa- mm-jjThh:mm:ss.sssZ." Pour extraire uniquement la partie date, nous pouvons diviser la chaîne en utilisant la lettre "T" comme séparateur et prendre la première partie :
let yourDate = new Date(); yourDate.toISOString().split('T')[0];
Cette méthode renverra la date dans le format "aaaa-mm-jj ", répondant à l'exigence d'origine.
Résoudre les différences de fuseau horaire
Il est important de noter que la méthode toISOString ne prend pas en compte les différences de fuseau horaire. Pour en tenir compte, une correction est nécessaire en fonction du décalage entre l'heure locale de l'utilisateur et le fuseau horaire de l'objet date.
const offset = yourDate.getTimezoneOffset(); yourDate = new Date(yourDate.getTime() - (offset * 60 * 1000)); return yourDate.toISOString().split('T')[0];
Avec cette correction, la date renvoyée sera dans le format "aaaa- format mm-jj", ajusté en fonction du fuseau horaire local de l'utilisateur.
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!