Heim > Artikel > Web-Frontend > So konvertieren Sie ein Objekt in es6 in ein Array
In es6 können Sie die from()-Methode des Array-Objekts verwenden, um das Objekt in ein Array umzuwandeln. Diese Methode kann ein Array-ähnliches Objekt oder ein durchquerbares Objekt in ein echtes Array konvertieren (Objekt)".
Die Betriebsumgebung dieses Tutorials: Windows 7-System, ECMAScript Version 6, Dell G3-Computer.
In es6 können Sie die from()-Methode des Array-Objekts verwenden, um das Objekt in ein Array umzuwandeln. Die Methode
Array.from() besteht darin, ein Array-ähnliches Objekt oder ein durchquerbares Objekt in ein echtes Array umzuwandeln.
Was ist also ein Array-ähnliches Objekt? Die grundlegendste Voraussetzung für das sogenannte Array-ähnliche Objekt ist ein Objekt mit dem Längenattribut.
1. Konvertieren Sie Array-ähnliche Objekte in echte Arrays:
let arrayLike = { 0: 'tom', 1: '65', 2: '男', 3: ['jane','john','Mary'], 'length': 4 } let arr = Array.from(arrayLike) console.log(arr) // ['tom','65','男',['jane','john','Mary']]
Was passiert also, wenn das Längenattribut im obigen Code entfernt wird? Die Praxis hat gezeigt, dass die Antwort ein leeres Array der Länge 0 sein wird.
Ändern Sie den Code erneut, das heißt, er hat das Längenattribut, aber der Attributname des Objekts ist nicht mehr vom numerischen Typ, sondern von anderen Zeichenfolgentypen. Der Code lautet wie folgt:
let arrayLike = { 'name': 'tom', 'age': '65', 'sex': '男', 'friends': ['jane','john','Mary'], length: 4 } let arr = Array.from(arrayLike) console.log(arr) // [ undefined, undefined, undefined, undefined ]
Sie werden feststellen, dass der Ergebnis ist Länge 4, Elemente Arrays, die alle undefiniert sind
Es ist ersichtlich, dass zum Umwandeln eines Array-ähnlichen Objekts in ein echtes Array die folgenden Bedingungen erfüllt sein müssen:
Das Array-ähnliche Objekt muss verfügen über ein Längenattribut, mit dem die Länge des Arrays angegeben wird. Wenn kein Längenattribut vorhanden ist, ist das konvertierte Array ein leeres Array.
Der Attributname dieses Array-Objekttyps muss eine Zahl oder eine Zeichenfolgenzahl sein
ps: Der Attributname dieses Array-Objekttyps kann in Anführungszeichen stehen oder nicht
2. Konvertieren Sie die Daten der Set-Struktur in ein echtes Array: Die Methode
let arr = [12,45,97,9797,564,134,45642] let set = new Set(arr) console.log(Array.from(set)) // [ 12, 45, 97, 9797, 564, 134, 45642 ]
Array.from
还可以接受第二个参数,作用类似于数组的map
wird verwendet, um jedes Element zu verarbeiten und den verarbeiteten Wert in das zurückgegebene Array einzufügen. Wie folgt:
let arr = [12,45,97,9797,564,134,45642] let set = new Set(arr) console.log(Array.from(set, item => item + 1)) // [ 13, 46, 98, 9798, 565, 135, 45643 ]
3. Konvertieren Sie die Zeichenfolge in ein Array:
let str = 'hello world!'; console.log(Array.from(str)) // ["h", "e", "l", "l", "o", " ", "w", "o", "r", "l", "d", "!"]
4. Der Parameter Array.from ist ein echtes Array:
console.log(Array.from([12,45,47,56,213,4654,154]))
In diesem Fall gibt Array.from ein identisches neues Array zurück
【Verwandt Empfehlungen: Javascript-Video-Tutorial, Web-Frontend】
Das obige ist der detaillierte Inhalt vonSo konvertieren Sie ein Objekt in es6 in ein Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!