Was bedeutet dieses Format T00:00:00.000Z?

Lesezeit: 4 Minuten

Benutzeravatar von Ali Akram
Ali Akram

Kann bitte jemand diese Art von Format in Javascript erklären

 T00:00:00.000Z

Und wie kann man es parsen?

  • de.wikipedia.org/wiki/ISO_8601

    – Zeichnete

    9. März 2015 um 19:10 Uhr

  • T bedeutet “Zeit” und trennt normalerweise das Datum von der Zeitkomponente. Z bedeutet, dass der Wert in Bezug auf ist koordinierte Weltzeit

    – Matt Johnson-Pint

    9. März 2015 um 19:44 Uhr

  • Eine Datumszeit, die mit Z endet, wird auch als Zulu-Zeit bezeichnet.

    – Strattonn

    29. Juli 2021 um 5:06 Uhr

Benutzeravatar von nanndoj
nanndoj

Es ist ein Teil von ISO-8601 Datumsdarstellung. Es ist unvollständig, da eine vollständige Datumsdarstellung in diesem Muster auch das Datum enthalten sollte:

2015-03-04T00:00:00.000Z //Complete ISO-8601 date

Wenn Sie versuchen, dieses Datum unverändert zu analysieren, erhalten Sie eine Invalid Date Error:

new Date('T00:00:00.000Z'); // Invalid Date

Ich denke, der Weg, einen Zeitstempel in diesem Format zu analysieren, besteht darin, ihn mit einem beliebigen Datum zu verknüpfen

new Date('2015-03-04T00:00:00.000Z'); // Valid Date

Dann können Sie nur den gewünschten Teil extrahieren (Zeitstempelteil)

var d = new Date('2015-03-04T00:00:00.000Z');
console.log(d.getUTCHours()); // Hours
console.log(d.getUTCMinutes());
console.log(d.getUTCSeconds());

  • Schließen – Sie sollten verwenden getUTCHours, getUTCMinutesund getUTCSeconds. Andernfalls vermitteln Sie das Verhalten der lokalen Zeitzone, was je nach Zeitzone und ausgewähltem Datum zu unterschiedlichen Ergebnissen führt – aufgrund der Sommerzeit.

    – Matt Johnson-Pint

    9. März 2015 um 19:43 Uhr

Ich schlage vor, Sie verwenden moment.js dafür. In moment.js können Sie:

var localTime = moment().format('YYYY-MM-DD'); // store localTime
var proposedDate = localTime + "T00:00:00.000Z";

Jetzt, da Sie das richtige Format für eine Zeit haben, analysieren Sie es, wenn es gültig ist:

var isValidDate = moment(proposedDate).isValid();
// returns true if valid and false if it is not.

und um Zeitteile zu erhalten, können Sie Folgendes tun:

var momentDate = moment(proposedDate)
var hour = momentDate.hours();
var minutes = momentDate.minutes();
var seconds = momentDate.seconds();

// or you can use `.format`:
console.log(momentDate.format("YYYY-MM-DD hh:mm:ss A Z"));

Weitere Informationen zu momentjs http://momentjs.com/

  • Sie sollten dies direkt im Moment-Konstruktor mit einem geeigneten Formatstring analysieren können. (moment nimmt das aktuelle Datum an, wenn es nicht Teil des Werts ist.) Sie könnten auch in Betracht ziehen moment.utc(...) Der resultierende Wert liegt also in derselben UTC-Zone wie der ursprüngliche Wert.

    – Matt Johnson-Pint

    9. März 2015 um 19:47 Uhr


  • Können Sie mir sagen, wie wir von der formatierten Datumsversion zurück in die ursprüngliche Datumsversion T00:00:00.000Z konvertieren können?

    – Chronoviser

    10. Juni 2021 um 10:05 Uhr

  • Verwenden Sie dieses Ergebnis, um das Format T00:00:00.000Z zu erhalten?

    – Ugur

    6. September 2021 um 15:11 Uhr

Benutzeravatar von that_developer
dieser_entwickler

Wie eine Person vielleicht schon vorgeschlagen hat,

Ich habe die bestanden ISO 8601 Datumszeichenfolge direkt zum Moment so …

moment.utc('2019-11-03T05:00:00.000Z').format('MM/DD/YYYY')

oder

moment('2019-11-03T05:00:00.000Z').utc().format('MM/DD/YYYY')

Beide Lösungen führen zum gleichen Ergebnis.

console.log(moment('2019-11-03T05:00:00.000Z').utc().format('MM/DD/YYYY')) // 11/3/2019

Weitere Informationen zu momentjs http://momentjs.com/

  • Wäre gut, auch zu verlinken und die Verwendung zu empfehlen moment.js Javascript-Bibliothek deutlich, während der obige Code erklärt wird.

    – VKen

    5. November 2019 um 14:16 Uhr

  • Damit ist die Frage nicht beantwortet. Sobald Sie über einen ausreichenden Ruf verfügen, können Sie jeden Beitrag kommentieren. stattdessen, Geben Sie Antworten, die keine Klärung durch den Fragesteller erfordern. – Aus Bewertung

    – Phil Melodie

    5. November 2019 um 14:30 Uhr

  • @PhilTune du hast Recht, ich glaube, mein Gehirn hat sich so schnell bewegt, dass ich technisch gesehen auf einen Kommentar und nicht auf die Frage geantwortet habe

    – that_developer

    5. November 2019 um 20:28 Uhr

Benutzeravatar von Shahid Hussain Abbasi
Shahid Hussein Abbasi

Bitte verwenden Sie DateTimeFormatter ISO_DATE_TIME = DateTimeFormatter.ISO_DATE_TIME;
Anstatt von DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss") oder irgendein Muster

Dies hat mein Problem unten behoben

java.time.format.DateTimeParseException: Text „2019-12-18T19:00:00.000Z“ konnte bei Index 10 nicht geparst werden

Benutzeravatar von Sujay Kundu
Sujay Kundu

Da jemand gefragt hat, wie man es implementiert:

Es ist einfach zu bedienen momentjs :

// install using yarn
yarn add moment
// or install using npm 
npm i moment 

dann können Sie so vorgehen, um das Datum entsprechend dem gewünschten Format zu extrahieren:

import 'moment' from moment;

let isoDate = "2021-09-19T05:30:00.000Z";

let newDate =  moment.utc(isoDate).format('MM/DD/YY');
console.log('converted date', newDate); // 09/23/21 
 
let newDate2 = moment.utc(isoDate).format("MMM Do, YYYY");
console.log('converted date', newDate2); // Sept 24, 2021

Benutzeravatar von FXLima
FXLima

Ich hatte ähnliche Probleme, ich habe es gelöst, indem ich das Datum / die Uhrzeit konvertiert habe, bevor ich sie an den Server gesendet habe, indem ich Folgendes verwendet habe:

Beispiel: (UTC Brasilien) Ich habe “fünfzehn/12/2020 22:30:00″ und es wurde gesendet: ‘2020-12-16T01:30:00.000Z’. Sie konvertieren mit:

var date = new Date('2020-11-06T01:30:00.000Z');
console.log(date.toLocaleDateString());
console.log(date.toLocaleString());
console.log(date.toLocaleTimeString());

1412360cookie-checkWas bedeutet dieses Format T00:00:00.000Z?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy