Heim > Web-Frontend > js-Tutorial > Warum hat Safari Probleme mit Datumsangaben im Format „29.11.2010'?

Warum hat Safari Probleme mit Datumsangaben im Format „29.11.2010'?

Mary-Kate Olsen
Freigeben: 2024-10-21 17:53:32
Original
357 Leute haben es durchsucht

Why Does Safari Struggle with Dates in '2010-11-29' Format?

Safari's Datumsanalyse-Macken

Warum gibt Safari einen „Ungültiges Datum“-Fehler aus, wenn auf Datumsangaben in Formaten wie „29.11.2010“ gestoßen wird? ', während andere Browser diese Daten problemlos verarbeiten? Dieses inkonsistente Verhalten kann für Webentwickler frustrierend sein.

Die Ursache des Problems liegt in Safaris Interpretation der Bindestriche (-) in den Datumszeichenfolgen. Während die meisten Browser Bindestriche als Datumstrennzeichen erkennen, behandelt Safari sie fälschlicherweise als Teil des Datums selbst, was zu falschen Datumsberechnungen führt.

Versuchen Sie zur Veranschaulichung die folgenden String-Parsing-Versuche:

alert(new Date('2010-29-11')); // Doesn't work in Safari
alert(new Date('29-11-2010')); // Doesn't work in Safari
alert(new Date('11-29-2010')); // Doesn't work in Safari
Nach dem Login kopieren

Wie Sie sehen, kann Safari diese Daten unabhängig von der Reihenfolge der Komponenten nicht richtig analysieren.

Während die Verwendung einer separaten Bibliothek wie Moment.js oder date-fns eine Option sein könnte, um dieses Problem zu beheben, Es gibt eine einfachere Lösung. Durch einfaches Ersetzen der Bindestriche durch Schrägstriche (/) kann Safari die Datumszeichenfolge korrekt interpretieren:

console.log(new Date('2011-04-12'.replace(/-/g, "/")));
Nach dem Login kopieren

Dieser einzeilige Fix stellt sicher, dass Safari Datumsangaben im erwarteten Format analysieren kann, sodass Webanwendungen Folgendes anzeigen können Bearbeiten Sie Daten konsistent über mehrere Browser hinweg.

Das obige ist der detaillierte Inhalt vonWarum hat Safari Probleme mit Datumsangaben im Format „29.11.2010'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage