JavaScript Split String Beispiel - So teilen Sie einen String in ein Array in JS

Eine Zeichenfolge ist eine Datenstruktur, die eine Folge von Zeichen darstellt, und ein Array ist eine Datenstruktur, die mehrere Werte enthält.

Und wussten Sie schon, dass eine Zeichenfolge mit dieser splitMethode in ein Array aus mehreren Zeichenfolgen aufgeteilt werden kann ? Mal sehen, wie das mit einigen Beispielen funktioniert.

TL; DR

Wenn Sie nur den Code möchten, können Sie loslegen:

const publisher = 'free code camp' publisher.split(' ') // [ 'free', 'code', 'camp' ] 

Syntax

Laut MDN ist die Syntax, die Sie zum Teilen der Zeichenfolge benötigen, wie folgt str.split([separator[, limit]]). Wenn wir dies auf das obige Beispiel anwenden:

  • str ist publisher
  • separator ist ' '
  • es gibt kein limit

Wann müssen Sie eine Zeichenfolge teilen?

Beispiel 1: Abrufen eines Teils einer Zeichenfolge

In diesem allgemeinen Beispiel wird das Token aus einem Authentifizierungsheader abgerufen, der Teil eines Token-basierten Authentifizierungssystems ist.

Wenn dir das nichts bedeutet, ist das in Ordnung. Für das folgende Beispiel müssen Sie bearer tokenlediglich wissen, dass es eine Zeichenfolge mit dem Wert gibt , die jedoch nur tokenbenötigt wird (da dies der Teil ist, der den Benutzer identifiziert):

const authHeader = 'bearer token' const split = authHeader.split(' ') // (1) [ 'bearer', 'token' ] const token = split[1] // (2) token

Folgendes passiert im obigen Code:

  1. Die Zeichenfolge wird mit ' 'als Trennzeichen geteilt
  2. Auf den zweiten Eintrag im Array wird zugegriffen

Beispiel 2: Wenden Sie Array-Methoden auf eine Zeichenfolge an

Oft ist die Eingabe , die Sie gegeben sind , ist eine Zeichenfolge, aber Sie wollen Array Methoden , um es anzuwenden (zB. map, filterOder reduce).

Angenommen, Sie erhalten eine Zeichenfolge mit Morsecode und möchten sehen, was auf Englisch gelesen wird:

const morse = '-.-. --- -.. .' // (1) const morseToChar = { '-.-.': 'c', '-..': 'd', '.': 'e', '---': 'o', } const morseArray = morse.split(' ') // (2) [ '-.-.', '---', '-..', '.' ] const textArray = morseArray.map((char) => morseToChar[char]) // (3) [ 'c', 'o', 'd', 'e' ] const text = textArray.join(") // (4) 

Folgendes passiert im obigen Code:

  1. Ein Objektliteral wird erstellt, um Morsezeichen dem englischen Alphabet zuzuordnen
  2. Der Morsecode wird in ein Array mit einem ' 'als Trennzeichen aufgeteilt. (Ohne ' 'als Argument würden Sie ein Array erhalten, das separate Einträge für jedes .und hat -.)
  3. Das Morsecode-Array wird einem Textarray zugeordnet / transformiert
  4. Aus dem Array wird eine Zeichenfolge mit ''dem Trennzeichen erstellt. (Ohne ''als Argument wäre die Ausgabe c,o,d,e.)

So fügen Sie ein Limit zum Teilen hinzu

Laut MDN ist es auch möglich, a limitals Argument zu übergeben split. Ich musste das nie tun, aber so können Sie es anwenden:

const publisher = 'free code camp' publisher.split(' ', 1) // [ 'free' ] 

Im obigen Beispiel ist das Array auf einen Eintrag beschränkt. Ohne sie wäre der Wert des Arrays [ 'free', 'code', 'camp' ].

Bevor du gehst…

Danke, dass Sie so weit gelesen haben! Ich schreibe über meine beruflichen und pädagogischen Erfahrungen als autodidaktischer Softwareentwickler. Besuchen Sie meine Website oder abonnieren Sie meinen Newsletter, um weitere Inhalte zu erhalten.

Das könnte dir auch gefallen:

  • Lernen Sie JavaScript mit diesen Ressourcen
  • Lernmaterial - Softwareentwicklung (beginnend mit Intro to CS)