JavaScript Split strengeksempel - Sådan opdeles en streng i en matrix i JS

En streng er en datastruktur, der repræsenterer en sekvens af tegn, og en matrix er en datastruktur, der indeholder flere værdier.

Og vidste du - en streng kan opdeles i en række flere strenge ved hjælp af splitmetoden. Lad os se, hvordan det fungerer med nogle eksempler.

TL; DR

Hvis du bare vil have koden, så kommer du:

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

Syntaks

Ifølge MDN er den syntaks, du skal splitte strengen str.split([separator[, limit]]). Hvis vi anvender dette på ovenstående eksempel:

  • str er publisher
  • separator er ' '
  • der er ingen limit

Hvornår skal du dele en streng?

Eksempel 1: at få en del af en streng

Her er et almindeligt eksempel, der involverer at få tokenet fra en auth-header, der er en del af et tokenbaseret godkendelsessystem.

Hvis dette ikke betyder noget for dig, er det ok. Alt hvad du behøver at vide i følgende eksempel er, at der er en streng med værdien bearer token, men kun tokener nødvendig (da dette er den del, der identificerer brugeren):

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

Her er hvad der sker i ovenstående kode:

  1. Strengen deles med ' 'som separator
  2. Der er adgang til den anden post i arrayet

Eksempel 2: Anvend array-metoder til en streng

Ofte input får du er en streng, men du ønsker at anvende array-metoder til den (f.eks. map, filterEller reduce).

Lad os for eksempel sige, at du får en streng morse-kode, og at du vil se, hvad den læser på engelsk:

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) 

Her er hvad der sker i ovenstående kode:

  1. En bogstavelig genstand oprettes for at kortlægge morse-tegn til det engelske alfabet
  2. Morskoden er opdelt i en matrix med a ' 'som separator. (Uden ' 'som et argument ville du ende med en matrix, der har separate poster for hver .og -.)
  3. Morse-kodearrayet kortlægges / omdannes til et tekstarray
  4. En streng oprettes fra arrayet med ''som separator. (Uden ''som et argument ville output være c,o,d,e.)

Sådan tilføjes en grænse for split

Ifølge MDN er det også muligt at overføre et limitsom argument til split. Jeg har aldrig haft brug for at gøre dette, men her kan du anvende det:

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

I ovenstående eksempel er arrayet begrænset til en post. Uden det ville matrixens værdi være [ 'free', 'code', 'camp' ].

Før du går…

Tak fordi du læste så langt! Jeg skriver om mine professionelle og uddannelsesmæssige erfaringer som selvlært softwareudvikler, så er du velkommen til at tjekke mit websted eller abonnere på mit nyhedsbrev for mere indhold.

Du kan muligvis også lide:

  • Lær JavaScript med disse ressourcer
  • Læringsmateriale - softwareudvikling (startende med Intro til CS)