Temporal.ZonedDateTime.prototype.equals()
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 equals()
Methode von Temporal.ZonedDateTime
Instanzen gibt true
zurück, wenn dieses Datum-Uhrzeit-Objekt einem anderen Datum-Uhrzeit-Objekt gleichwertig ist (in einer Form, die durch Temporal.ZonedDateTime.from()
konvertierbar ist), und false
andererseits. Sie werden sowohl nach ihren Instant-Werten, Zeitzonen als auch ihren Kalendern verglichen. Daher können zwei Datum-Uhrzeit-Objekte in unterschiedlichen Kalendern oder Zeitzonen durch Temporal.ZonedDateTime.compare()
als gleich betrachtet werden, aber nicht durch equals()
.
Syntax
equals(other)
Parameter
other
-
Ein String, ein Objekt oder eine
Temporal.ZonedDateTime
Instanz, die das andere Datum-Uhrzeit-Objekt darstellt, das verglichen werden soll. Es wird mit demselben Algorithmus wieTemporal.ZonedDateTime.from()
in einTemporal.ZonedDateTime
Objekt konvertiert.
Rückgabewert
true
, wenn dieses Datum-Uhrzeit-Objekt other
sowohl in ihrem Instant-Wert, in der Zeitzone als auch in ihrem Kalender entspricht, false
andernfalls.
Beachten Sie, dass die Zeitzonen vor dem Vergleich kanonisiert werden. Wenn ihre Zeitzonen-IDs sowohl benannt als auch dieselbe Zeitzone identifizieren, dann würden sie als gleich betrachtet, selbst wenn die genauen Namen Aliasse voneinander sein können. Offset-Identifikatoren werden durch die Offset-Werte verglichen, die sie repräsentieren. Offset-Identifikatoren sind niemals gleich benannten Identifikatoren, selbst wenn die benannte Zeitzone immer diesen Offset verwendet.
Beispiele
Verwendung von equals()
// Asia/Kolkata and Asia/Calcutta are aliases of each other
const dt1 = Temporal.ZonedDateTime.from(
"2021-07-01T12:34:56+05:30[Asia/Kolkata]",
);
const dt2 = Temporal.ZonedDateTime.from(
"2021-07-01T12:34:56+05:30[Asia/Calcutta]",
);
console.log(dt1.equals(dt2)); // true
const dt3 = Temporal.ZonedDateTime.from("2021-07-01T12:34:56+05:30[+05:30]");
console.log(dt1.equals(dt3)); // false
const dt4 = Temporal.ZonedDateTime.from(
"2021-07-01T12:34:56+05:30[Asia/Kolkata][u-ca=buddhist]",
);
console.log(dt1.equals(dt4)); // false
Testen, ob zwei Zeitzonen-Identifikatoren äquivalent sind
function sameTimeZone(timeZone1, timeZone2) {
const dt1 = Temporal.ZonedDateTime.from({
year: 2021,
month: 7,
day: 1,
timeZone: timeZone1,
});
const dt2 = Temporal.ZonedDateTime.from({
year: 2021,
month: 7,
day: 1,
timeZone: timeZone2,
});
return dt1.equals(dt2);
}
console.log(sameTimeZone("Asia/Kolkata", "Asia/Calcutta")); // true
console.log(sameTimeZone("Asia/Shanghai", "Asia/Taipei")); // false
Spezifikationen
Specification |
---|
Temporal # sec-temporal.zoneddatetime.prototype.equals |