Temporal.PlainDateTime.compare()
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die statische Methode Temporal.PlainDateTime.compare()
gibt eine Zahl (-1, 0 oder 1) zurück, die anzeigt, ob das erste Datum-Uhrzeit-Wert vor, gleich oder nach dem zweiten Datum-Uhrzeit-Wert kommt. Dies entspricht zunächst dem Vergleich ihrer Daten und, wenn die Daten gleich sind, dem Vergleich ihrer Uhrzeiten.
Syntax
Temporal.PlainDateTime.compare(dateTime1, dateTime2)
Parameter
dateTime1
-
Ein String, ein Objekt oder eine Instanz von
Temporal.PlainDateTime
, die den ersten zu vergleichenden Datum-Uhrzeit-Wert darstellt. Er wird unter Verwendung desselben Algorithmus wieTemporal.PlainDateTime.from()
in einTemporal.PlainDateTime
-Objekt umgewandelt. dateTime2
-
Der zweite zu vergleichende Datum-Uhrzeit-Wert, der unter demselben Algorithmus wie
dateTime1
in einTemporal.PlainDateTime
-Objekt umgewandelt wird.
Rückgabewert
Gibt -1
zurück, wenn dateTime1
vor dateTime2
kommt, 0
wenn sie gleich sind, und 1
wenn dateTime1
nach dateTime2
kommt. Sie werden anhand ihrer zugrunde liegenden Datums- und Zeitwerte verglichen, wobei ihre Kalender ignoriert werden.
Beispiele
Verwendung von Temporal.PlainDateTime.compare()
const dt1 = Temporal.PlainDateTime.from("2021-08-01T01:00:00");
const dt2 = Temporal.PlainDateTime.from("2021-08-02T00:00:00");
console.log(Temporal.PlainDateTime.compare(dt1, dt2)); // -1
const dt3 = Temporal.PlainDateTime.from("2021-08-01T00:00:00");
console.log(Temporal.PlainDateTime.compare(dt1, dt3)); // 1
Vergleich von Daten in unterschiedlichen Kalendern
const dt1 = Temporal.PlainDateTime.from({ year: 2021, month: 8, day: 1 });
const dt2 = Temporal.PlainDateTime.from({
year: 2021,
month: 8,
day: 1,
calendar: "islamic-umalqura",
});
const dt3 = Temporal.PlainDateTime.from({
year: 2021,
month: 8,
day: 1,
calendar: "hebrew",
});
console.log(dt1.toString()); // "2021-08-01T00:00:00"
console.log(dt2.toString()); // "2582-12-17T00:00:00[u-ca=islamic-umalqura]"
console.log(dt3.toString()); // "-001739-04-06T00:00:00[u-ca=hebrew]"
console.log(Temporal.PlainDateTime.compare(dt1, dt2)); // -1
console.log(Temporal.PlainDateTime.compare(dt1, dt3)); // 1
Sortieren eines Arrays von Datum-Uhrzeit-Werten
Der Zweck dieser compare()
-Funktion besteht darin, als Vergleichsfunktion zu dienen, die an Array.prototype.sort()
und verwandte Funktionen übergeben wird.
const dateTimes = [
Temporal.PlainDateTime.from("2021-08-01"),
Temporal.PlainDateTime.from("2021-08-02"),
Temporal.PlainDateTime.from("2021-08-01T01:00:00"),
];
dateTimes.sort(Temporal.PlainDateTime.compare);
console.log(dateTimes.map((d) => d.toString()));
// [ "2021-08-01T00:00:00", "2021-08-01T01:00:00", "2021-08-02T00:00:00" ]
Spezifikationen
Specification |
---|
Temporal proposal # sec-temporal.plaindatetime.compare |