Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit September 2015 browserübergreifend verfügbar.
Die statische Methode Array.from() erstellt eine neue, flach kopierte Array-Instanz von einem iterierbaren oder array-ähnlichen Objekt.
Ein iterierbares oder array-ähnliches Objekt, das in ein Array umgewandelt werden soll.
mapFn OptionalEine Funktion, die auf jedes Element des Arrays aufgerufen wird. Falls angegeben, wird jeder Wert, der zum Array hinzugefügt werden soll, zuerst durch diese Funktion geleitet, und der Rückgabewert von mapFn wird stattdessen zum Array hinzugefügt. Die Funktion wird mit den folgenden Argumenten aufgerufen:
elementDas aktuelle Element, das im Array verarbeitet wird.
indexDer Index des aktuellen Elements, das im Array verarbeitet wird.
thisArg OptionalDer Wert, der als this verwendet wird, wenn mapFn ausgeführt wird.
Eine neue Array-Instanz.
Array.from() ermöglicht das Erstellen von Arrays aus:
Um ein gewöhnliches Objekt, das weder iterierbar noch array-ähnlich ist, in ein Array zu konvertieren (durch Aufzählung seiner Eigenschaftsschlüssel, -werte oder beider), verwenden Sie Object.keys(), Object.values(), oder Object.entries(). Um ein asynchron iterierbares Objekt in ein Array zu konvertieren, verwenden Sie Array.fromAsync().
Array.from() erstellt niemals ein spärliches Array. Wenn dem items-Objekt einige Indizeigenschaften fehlen, werden sie im neuen Array zu undefined.
Array.from() verfügt über einen optionalen Parameter mapFn, der es Ihnen ermöglicht, eine Funktion auf jedes Element des erstellten Arrays auszuführen, ähnlich wie map(). Genauer gesagt hat Array.from(obj, mapFn, thisArg) dasselbe Ergebnis wie Array.from(obj).map(mapFn, thisArg), außer dass kein Zwischenarray erstellt wird und mapFn nur zwei Argumente erhält (element, index) ohne das ganze Array, da das Array noch im Aufbau ist.
Hinweis: Dieses Verhalten ist für typisierte Arrays wichtiger, da das Zwischenarray notwendigerweise Werte haben würde, die gekürzt werden müssen, um in den geeigneten Typ zu passen. Array.from() ist so implementiert, dass es die gleiche Signatur wie TypedArray.from() hat.
Die Array.from()-Methode ist eine generische Fabrikmethode. Wenn z. B. eine Unterklasse von Array die from()-Methode erbt, wird die geerbte from()-Methode neue Instanzen der Unterklasse anstelle von Array-Instanzen zurückgeben. Tatsächlich kann der this-Wert jede Konstruktorfunktion sein, die ein einzelnes Argument akzeptiert, das die Länge des neuen Arrays darstellt. Wenn ein iterierbares Objekt als items übergeben wird, wird der Konstruktor ohne Argumente aufgerufen; wenn ein array-ähnliches Objekt übergeben wird, wird der Konstruktor mit der normalisierten Länge des array-ähnlichen Objekts aufgerufen. Die endgültige length wird erneut festgelegt, wenn die Iteration abgeschlossen ist. Wenn der this-Wert keine Konstruktorfunktion ist, wird stattdessen der einfache Array-Konstruktor verwendet.
Die from()-Methode kann auf jeder Konstruktorfunktion aufgerufen werden, die ein einzelnes Argument akzeptiert, das die Länge des neuen Arrays darstellt.
Wenn der this-Wert kein Konstruktor ist, wird ein einfaches Array-Objekt zurückgegeben.
| ECMAScript® 2027 Language Specification # sec-array.from |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.