Intl.RelativeTimeFormat
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2020.
Das Intl.RelativeTimeFormat
-Objekt ermöglicht die sprachsensitive relative Zeitformatierung.
Probieren Sie es aus
Konstruktor
Intl.RelativeTimeFormat()
-
Erstellt ein neues
Intl.RelativeTimeFormat
-Objekt.
Statische Methoden
Intl.RelativeTimeFormat.supportedLocalesOf()
-
Gibt ein Array zurück, das diejenigen der angegebenen Sprachen enthält, die unterstützt werden, ohne auf die Standard-Locale der Laufzeitumgebung zurückgreifen zu müssen.
Instanzeigenschaften
Diese Eigenschaften sind auf Intl.RelativeTimeFormat.prototype
definiert und werden von allen Intl.RelativeTimeFormat
-Instanzen gemeinsam genutzt.
Intl.RelativeTimeFormat.prototype.constructor
-
Die Konstruktorfunktion, die das Instanzobjekt erstellt hat. Für
Intl.RelativeTimeFormat
-Instanzen ist der Anfangswert derIntl.RelativeTimeFormat
-Konstruktor. Intl.RelativeTimeFormat.prototype[Symbol.toStringTag]
-
Der Anfangswert der
[Symbol.toStringTag]
Eigenschaft ist der String"Intl.RelativeTimeFormat"
. Diese Eigenschaft wird inObject.prototype.toString()
verwendet.
Instanzmethoden
Intl.RelativeTimeFormat.prototype.format()
-
Formatiert einen
value
und eineunit
gemäß der Locale und den Formatierungsoptionen des angegebenenIntl.RelativeTimeFormat
-Objekts. Intl.RelativeTimeFormat.prototype.formatToParts()
-
Gibt ein
Array
von Objekten zurück, die das relative Zeitformat in Teilen darstellen, die für benutzerdefinierte, sprachbewusste Formatierungen verwendet werden können. Intl.RelativeTimeFormat.prototype.resolvedOptions()
-
Gibt ein neues Objekt mit Eigenschaften zurück, die die bei der Initialisierung des Objekts berechneten Locale und Formatierungsoptionen widerspiegeln.
Beispiele
Grundlegender Formatgebrauch
Das folgende Beispiel zeigt, wie ein relativer Zeitformatierer für die englische Sprache verwendet wird.
// Create a relative time formatter in your locale
// with default values explicitly passed in.
const rtf = new Intl.RelativeTimeFormat("en", {
localeMatcher: "best fit", // other values: "lookup"
numeric: "always", // other values: "auto"
style: "long", // other values: "short" or "narrow"
});
// Format relative time using negative value (-1).
rtf.format(-1, "day"); // "1 day ago"
// Format relative time using positive value (1).
rtf.format(1, "day"); // "in 1 day"
Verwendung von formatToParts
Das folgende Beispiel zeigt, wie man einen relativen Zeitformatierer erstellt, der formatierte Teile zurückgibt.
const rtf = new Intl.RelativeTimeFormat("en", { numeric: "auto" });
// Format relative time using the day unit.
rtf.formatToParts(-1, "day");
// [{ type: "literal", value: "yesterday"}]
rtf.formatToParts(100, "day");
// [
// { type: "literal", value: "in " },
// { type: "integer", value: "100", unit: "day" },
// { type: "literal", value: " days" }
// ]
Spezifikationen
Specification |
---|
ECMAScript Internationalization API Specification # relativetimeformat-objects |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- Polyfill von
Intl.RelativeTimeFormat
in FormatJS Intl
Intl.RelativeTimeFormat
auf v8.dev (2018)