Dieser Beitrag erklärt die Methoden zu ebnen A Verschachteltes JavaScript -Array. Aber bevor wir hineinspringen, werden wir den Begriff erklären “Tiefe”Da es mit dem Abflachungsverfahren verbunden ist.
Tiefe des verschachtelten JavaScript -Arrays
Der Betrieb eines inneren Arrays oder des Verschachtelns eines Arrays in normalen Array -Schritten “1" im Tiefenstufe. Zum Beispiel hat ein normales Array ohne verschachtelte Array eine “0Tiefenebene:
[12, 23, 34, 45, 56, 67, 78] // Tiefenstufe = 0Mit einem inneren Unterarray wird die Tiefenstufe "1”:
[12, 23, 34, [45, 56, 67, 78]] // Tiefenstufe = 1In ähnlicher Weise erhöht die Erhöhung der Anzahl des inneren Unterarrays auch die Tiefenstufe:
[12, 23, [34, [45, 56, 67, 78]] // Tiefenstufe = 2Schauen Sie sich nun die Methode zur Abflachung eines Arrays in der JavaScript -Version vor ES6 an.
Wie man ein verschachteltes JavaScript -Array mithilfe der CONCAT () -Methode und des Spread Operators […] verflacht []
Die Kombination von "concat ()Methode und “Operator ausbreiten […]Die Methode wird verwendet, um ein verschachteltes JavaScript -Array so wie der Spread -Operator […] die Elemente des angegebenen Arrays auszubreiten und sie dann in einem leeren Array mit der Methode JavaScript concat () zu verkettet zu haben:
Sei Array = [12, 23, [43, 34, 56]];Ausgang
Dieser Ansatz verfolgt jedoch nur die verschachtelten Arrays der Stufe 1:
const numarray = [12, 23, [34, 45, 56, [67, 78]];Der oben gegebene Code fügt das innere Array von “hinzu“Numarray"Als Ganzes zu"FlatarrayDa es seine Elemente nicht verbreiten kann:
Was ist, wenn Sie ein tief verschachteltes Array abflachen müssen?? Dazu können Sie das nutzen “Array.ebnen()”Methode, die von der ES6 JavaScript -Version angeboten wird.
Wie man ein verschachteltes JavaScript -Array mit Array überflätt.Flat () Methode
Der "Array.Wohnung()”Methode ist eingebettet in Es6 Das ermöglicht es Ihnen, “ebnen”Ein verschachteltes JavaScript -Array. Diese Methode gibt ein neues Array zurück, in dem alle Elemente von Unterarrays entsprechend der angegebenen Tiefe verkettet sind.
Syntax des Arrays.Flat () Methode, um ein verschachteltes JavaScript -Array zu verflachen
Lassen Sie NewArray = Array.flach ([Tiefe])Hier das "Array"Objekt wird auf die" aufgerufen "Wohnung()”Methode beim Bestehen“TiefeAls Argumentation.
Lassen Sie uns nun einige Beispiele überprüfen, um das angegebene Konzept zu verstehen.
Beispiel 1: Wie man ein verschachteltes JavaScript -Array mit einer Tiefe der Stufe verfließt
Zunächst werden wir ein verschachteltes JavaScript-Array mit den folgenden Elementen und einem Unterarray erstellen:
const numarray = [12, 23, [34, 45, 56]];Dann werden wir das geschaffene verschachtelte abflachen “Numarray"Mit Hilfe der"Wohnung()" Methode:
const flatArray = numarray.Wohnung();Wir haben das nicht bestandenTiefe"Argument, also das"Numarray.Wohnung()"Wird den Standard -Tiefenwert berücksichtigen, nämlich"1Und verkettet die von JavaScript verschachtelten Array -Elemente 34, 45, 56 zum neu erstellten “Flatarray”:
Beispiel 2: Wie man ein verschachteltes JavaScript-Array mit zweistufiger Tiefe verfließt
Im folgenden Beispiel werden wir angeben “2" als die "Tiefe" eben. Nachdem das "das"Numarray.Wohnung()"Wird die inneren zwei Sub-Arrays verflachten und ihre Elemente in den resultierenden" hinzufügen "flatArray ()”:
const numarray = [12, 23, [34, 45, 56, [67, 78]];Die Ausführung des angegebenen Programms zeigt die folgende Ausgabe:
Beispiel 3: Wie man ein verschachteltes JavaScript -Array überflätt, ohne die Tiefenstufe zu kennen
Wenn Sie keine Ahnung von der Array -Tiefenstufe haben, passieren Sie “Unendlichkeit"Als Argument für die"Array.Wohnung()" Methode. In diesem Fall sind alle Sub-Arrays-Elemente "rekursiv”Zu einem anderen Array verkettet.
Zum Beispiel, um das untergegebene Ablagerungen zu verflachen “Numarray"Wir werden angeben"UnendlichkeitAnstelle des Arguments der Tiefenebene:
const numarray = [12, 23, [34, 45, 56, [67, 78, [89, 90]]];Wie Sie sehen können, das “Numarray.Wohnung()"Die Methode hat das verschachtelte erfolgreich abgeflacht"Numarray”:
Dies waren alle wesentlichen Informationen zum Abflachen eines Arrays in JavaScript. Sie können nach Ihren Vorlieben weiter daran arbeiten.
Abschluss
Der Array.Wohnung() Die Methode wird in erster Linie verwendet, um ein verschachteltes JavaScript -Array zu verflachen. Es akzeptiert die Tiefe Ebene als Argument. Vor ES6 die Kombination einiger eingebauter Methoden wie z concat () Und Operator ausbreiten […] kann nur das Array der Stufe eins abflachen; Allerdings die Array.Wohnung() Die Methode hilft dabei, tief verschachtelte Arrays zu verflachen. In diesem Artikel wurde das Verfahren erläutert, um ein Array in JavaScript zu verflachen.