Einführung
In diesem Lab werden wir untersuchen, wie man mit JavaScript Werte aus einem Array an bestimmten Indizes extrahiert. Wir werden die Funktion pullAtIndex() verwenden, die das ursprüngliche Array mutiert, um die Werte an den angegebenen Indizes zu filtern und die entfernten Elemente zurückgibt. Am Ende dieses Labs werden Sie eine solide Vorstellung davon haben, wie man in JavaScript Arrays manipuliert.
Wie man Werte aus einem Array an einem Index extrahiert
Um bestimmte Werte aus einem Array an bestimmten Indizes herauszuziehen, folgen Sie diesen Schritten:
- Öffnen Sie das Terminal/SSH und geben Sie
nodeein, um mit der Codeausführung zu beginnen. - Verwenden Sie
Array.prototype.filter()undArray.prototype.includes(), um die nicht benötigten Werte auszuschließen und sie in einem neuen Array namensremovedzu speichern. - Setzen Sie
Array.prototype.lengthauf0, um das ursprüngliche Array zu mutieren, indem Sie seine Länge zurücksetzen. - Verwenden Sie
Array.prototype.push(), um das ursprüngliche Array nur mit den extrahierten Werten neu zu befüllen. - Verwenden Sie
Array.prototype.push(), um die entfernten Werte zu verfolgen. - Die Funktion
pullAtIndexnimmt zwei Argumente entgegen: das ursprüngliche Array und ein Array von Indizes, die extrahiert werden sollen. - Die Funktion gibt ein Array der entfernten Werte zurück.
Beispielverwendung:
const pullAtIndex = (arr, pullArr) => {
let removed = [];
let pulled = arr
.map((v, i) => (pullArr.includes(i) ? removed.push(v) : v))
.filter((v, i) => !pullArr.includes(i));
arr.length = 0;
pulled.forEach((v) => arr.push(v));
return removed;
};
let myArray = ["a", "b", "c", "d"];
let pulled = pullAtIndex(myArray, [1, 3]);
// myArray = [ 'a', 'c' ], pulled = [ 'b', 'd' ]
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Lab "Pull Values From Array at Index" abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.