Gibt es eine Möglichkeit, alle Leerzeichen aus einem Array in Javascript zu entfernen? Zum Beispiel: [' 1',' ','c ']; sollte durch ['1','c']; ersetzt werden. Diese https://stackoverflow.com/a/20668919/4877962 entfernt das Element, das ein Leerzeichen ist, aber wie Entfernen Sie den im Element vorhandenen Leerraum, dh ' 1' bis '1'? Ich bin ein Neuling bei JS, bitte ignorieren Sie, wenn es eine dumme Frage ist.

-1
merilstack 18 Apr. 2018 im 05:49

3 Antworten

Beste Antwort

Wenn Sie nur alle Leerzeichen aus jeder Zeichenfolge entfernen möchten, können Sie sie verwenden

['  1',' ','c  '].map(item => item.trim())

Wenn Sie alle Leerzeichen und leeren Zeichenfolgen entfernen möchten, können Sie die Pigeontoe-Lösung ausprobieren oder die Implementierung reduzieren

const array = ['  1',' ','c  ']

const result = array.reduce((accumulator, currentValue) => {
    const item = currentValue.trim()

    if (item !== '') {
        accumulator.push(item);
    }

    return accumulator;
}, [])
1
user615274 18 Apr. 2018 im 03:27

Javascript hat die trim() Funktion https://www.w3schools.com/jsref/jsref_trim_string. asp. Use kann map verwenden, um ein Array und trim() jedes Element zu durchlaufen.

0
bird 18 Apr. 2018 im 03:17

Sie können eine Kombination aus .map () und .trim () verwenden, um das Array zu durchlaufen und Leerzeichen zu entfernen. Dann .filter (), um die leeren Zeichenfolgen wie folgt herauszufiltern:

const input = ['  1',' ','c  '];

const output = input
  .map(val => val.trim())
  .filter(val => val !== '')

console.log(output)
0
pigeontoe 18 Apr. 2018 im 03:21