Maison > interface Web > js tutoriel > Safari peut-il analyser les dates au format « AAAA-MM-JJ » ou dans des formats alternatifs ?

Safari peut-il analyser les dates au format « AAAA-MM-JJ » ou dans des formats alternatifs ?

DDD
Libérer: 2024-10-21 17:50:30
original
960 Les gens l'ont consulté

Can Safari Parse Dates in 'YYYY-MM-DD' or Alternative Formats?

Résolution du problème de « Date invalide » avec Safari

L'extrait de code fourni, qui tente de créer un objet Date à partir d'une représentation sous forme de chaîne, rencontre des difficultés dans Safari. Cela est dû à l'incapacité du navigateur à analyser correctement certains formats de date.

Au départ, l'utilisation du format « AAAA-MM-JJ » (par exemple, « 2010-11-29 ») fonctionnait bien dans d'autres navigateurs comme Chrome. et Firefox. Cependant, Safari a affiché une erreur « date invalide ».

Pour tenter de résoudre ce problème, le code a été modifié pour essayer différents formats de date : « MM-JJ-AAAA », « JJ-MM-AAAA ». et « AAAA-JJ-MM ». Malheureusement, aucune de ces variantes n'a réussi dans Safari.

Une solution, bien que considérée comme quelque peu excessive pour ce problème mineur, consiste à utiliser une bibliothèque d'analyse de date dédiée comme Moment.js ou Date-fns. Ces bibliothèques offrent des capacités robustes de gestion des dates dans tous les navigateurs.

Une autre approche plus simple consiste à utiliser une expression régulière pour transformer la chaîne de date dans un format compatible avec Safari :

console.log(new Date('2011-04-12'.replace(/-/g, "/")));
Copier après la connexion

En remplaçant les traits d'union (-) avec des barres obliques (/), la chaîne de date devient compatible avec la logique d'analyse de date de Safari. Cette méthode est relativement simple et efficace sans nécessiter de bibliothèques supplémentaires.

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!

source:php
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal