Heim > Web-Frontend > js-Tutorial > So konvertieren Sie ein Objekt in es6 in ein Array

So konvertieren Sie ein Objekt in es6 in ein Array

青灯夜游
Freigeben: 2022-10-18 17:24:55
Original
8336 Leute haben es durchsucht

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)".

So konvertieren Sie ein Objekt in es6 in ein Array

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']]
Nach dem Login kopieren

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 ]
Nach dem Login kopieren

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 ]
Nach dem Login kopieren

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 ]
Nach dem Login kopieren

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", "!"]
Nach dem Login kopieren

4. Der Parameter Array.from ist ein echtes Array:

console.log(Array.from([12,45,47,56,213,4654,154]))
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage