Wie kann ich mit Array.splice das Array an Ort und Stelle ändern, wie kann ich alle reinen Whitespace-Elemente aus einem Array entfernen, ohne einen Fehler zu erzeugen? Mit PHP haben wir preg_grep, aber ich bin verloren, wie und das richtig in JS.
Folgendes wird aus dem oben genannten Grund nicht funktionieren:
%Vor%Fehler:
Uncaught TypeError: Die Methode 'match' von undefined
kann nicht aufgerufen werden
Eine bessere Methode, um "whitespace-only" -Elemente aus einem Array zu entfernen.
%Vor%Erläuterung:
Array.prototype.filter
gibt ein neues Array zurück, das nur die Elemente enthält, für die die Funktion true
(oder einen Truthy-Wert) zurückgibt.
/\S/
ist eine Regex, die einem Nicht-Leerzeichen entspricht. /\S/.test(str)
gibt zurück, ob str
ein Nicht-Leerzeichen hat.
Sie haben ein Element aus dem Array entfernt, wodurch die Länge des Arrays reduziert wurde. Ihre Schleife wurde fortgesetzt, einige Indizes (die in den entfernten Index verschoben wurden) übersprungen und schließlich versucht, auf einen Index außerhalb des neuen Bereichs zuzugreifen.
Versuchen Sie es stattdessen:
Tags und Links javascript