Lassen Sie uns zunächst verstehen, was ein abgeflachtes Array ist. Ein abgeflachtes Array ist ein Array, aber dieses Array ist eine Form eines mehrdimensionalen Arrays, eines verschachtelten Arrays oder eines Arrays, das ein anderes Array enthält.
Flatten ist ein Ansatz oder eine Technik, die hilft, das mehrdimensionale Array auf ein eindimensionales Array zu reduzieren, das als Flatten bezeichnet wird.
Manchmal benötigen wir diese Art von Daten, wenn wir an Projekten arbeiten oder ein Problem lösen. Dann ist es hilfreich, die Gruppe des Datensatzes mithilfe eines abgeflachten Arrays zu übergeben.
Beispiel:
// This is a flattened array let arr = [1,44, [2, [3,9], 67], 9];
Es gibt mehrere Möglichkeiten, diese Art von Problem zu lösen, aber hier werde ich die Verwendung der Rekursionsmethode erklären, dies ist einer der besten Ansätze, um diese Art von Problem zu lösen.
Hier werde ich nicht auf eine detaillierte Erklärung der Rekursion eingehen, aber ich werde einen kleinen Überblick darüber geben. Wenn Sie mehr darüber erfahren möchten, werde ich einen separaten Beitrag dazu erstellen.
Rekursion ist ein Programmieransatz zur Lösung der Probleme sich wiederholender Arten von Arbeiten, der sich selbst direkt oder indirekt aufruft, bis die gegebenen besonderen Bedingungen nicht erfüllt werden. Wenn eine Übereinstimmung vorliegt, stoppt die Funktion den Aufruf selbst.
// This is a flattened array // Input: let arr = [1,44, [2, [3,9], 67], 9]; // Function Defin function recur(a) { let newArr = []; for (let i =0 ; i < a.length; i++) { const element = a[i]; if (Array.isArray(element)) { // Function calling itself recursion newArr.push(...recur(element)) } else { newArr.push(element) } } return newArr; } console.log(recur(arr)) Output: [1,44,2,3,9, 67, 9] // We can also write the same code using for each: function flattenArray(items) { const flat = []; items.forEach(item => { if (Array.isArray(item)) { flat.push(...flatten(item)); } else { flat.push(item); } }); return flat; } onsole.log(flattenArray(arr)) output: [1,44,2,3,9, 67, 9]
Das obige ist der detaillierte Inhalt vonWas ist ein abgeflachtes Array und wie löst man das Problem der abgeflachten Anordnung mithilfe von Rekursionsfunktionen in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!