Heim  >  Artikel  >  Web-Frontend  >  Fallstricke beim neuen Datum von JavaScript und anderen Datumsfunktionen in Safari

Fallstricke beim neuen Datum von JavaScript und anderen Datumsfunktionen in Safari

高洛峰
高洛峰Original
2016-12-09 10:56:411206Durchsuche

Als ich kürzlich am mobilen Web gearbeitet habe, habe ich es erfolgreich mit Chrome auf dem PC debuggt, aber als ich es auf dem iPhone getestet habe, traten seltsame Probleme auf. Nach einer Reihe von Debugging-Vorgängen wurde festgestellt, dass ein Problem mit dem Datum vorliegt. Zuerst vermutete ich, dass es sich um ein Problem in der Produktionsumgebung handelte, aber das gleiche Problem trat auch beim lokalen Debuggen mit der Mac-Version von Safari auf. Nachdem ich einige Informationen konsultiert hatte, stellte ich fest, dass es ein seltsames Problem bei der Unterstützung der neuen Datumsfunktion von JavaScript durch Safari gibt.

Da Sie in SQL an das Datum/Uhrzeit-Format gewöhnt sind, wird das Datum normalerweise im Format jjjj-mm-tt formatiert. Safari unterstützt dieses Format jedoch nicht. Wenn Sie also die folgende Anweisung eingeben, wird null angezeigt zurückgegebene Zeit.

new Date('2016-04-17');

Das von Safari unterstützte Format ist jjjj/mm/tt. Der Hauptunterschied liegt im Bindestrich – und dem Schrägstrich /, während der Schrägstrich ist so Das Format kann auch in anderen gängigen Browsern normal ausgeführt werden, Sie müssen es also nur durch Schrägstriche ersetzen. Die Konvertierungsfunktion lautet wie folgt:

new Date('2016-04-17'.replace(/-/g, "/"));


Stellungnahme:
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