Metoden split
Metoden split deler opp
strenger til en array ved det angitte
skilletegnet i den første parameteren.
Hvis den ikke er angitt - returneres hele
strengen. Hvis den er angitt som tomme anførselstegn,
vil hvert tegn i strengen bli plassert i et separat
array-element. Med en andre valgfri
parameter kan du angi maksimalt
antall elementer i den resulterende arrayen.
Syntaks
streng.split([skilletegn], [maksimalt antall elementer]);
Eksempel
La oss si at det er gitt en streng med bindestreker. La oss
dele opp denne strengen til en array ved skilletegnet
'-':
let str = 'ab-cd-ef';
let arr = str.split('-');
console.log(arr);
Resultat av kjøring av kode:
['ab', 'cd', 'ef']
Eksempel
La oss igjen dele opp strengen ved skilletegnet
'-', men angi med den andre parameteren
maksimalt antall elementer i den resulterende
arrayen, for eksempel 2. I dette tilfellet vil
kun 2 elementer bli skrevet til
arrayen:
let str = 'ab-cd-ef';
let arr = str.split('-', 2);
console.log(arr);
Resultat av kjøring av kode:
['ab', 'cd']
Eksempel
La oss skrive hvert tegn i strengen til et separat array-element:
let str = 'abcde';
let arr = str.split('');
console.log(arr);
Resultat av kjøring av kode:
['a', 'b', 'c', 'd', 'e']
Eksempel
La oss skrive de første 3 tegnene i strengen
til separate array-elementer:
let str = 'abcde';
let arr = str.split('', 3);
console.log(arr);
Resultat av kjøring av kode:
['a', 'b', 'c']
Eksempel
La oss ved hjelp av split dele opp
en streng med tall. Vær oppmerksom på at
resultatet blir en array med strenger,
ikke en array med tall:
let str = '12345';
let arr = str.split('');
console.log(arr);
Resultat av kjøring av kode:
['1', '2', '3', '4', '5']
Eksempel . Anvendelse
La oss snu tegnene i strengen i omvendt
rekkefølge. For å gjøre dette deler vi opp strengen til en array
med split ved skilletegnet ''
(dette vil plassere hvert tegn i strengen i et separat
array-element), snu denne arrayen
med reverse
og deretter flette den snudde arrayen tilbake
med join:
let str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');
console.log(res);
Resultat av kjøring av kode:
'987654321'
Eksempel . Anvendelse
La oss forenkle løsningen av forrige oppgave - la oss flette alle kommandoene til en kjede:
let str = '123456789';
let res = str.split('').reverse().join('');
console.log(res);
Resultat av kjøring av kode:
'987654321'
Eksempel . Anvendelse
Det er gitt en streng med sifre. La oss finne summen av sifrene
fra denne strengen. For å gjøre dette deler vi opp strengen
til en array, og deretter itererer vi gjennom denne arrayen og
finner summen. Det lurte på et problem: split
returnerer strenger, så under summering
konverterer vi disse sifre-strengene til ekte
tall med Number:
let str = '12345';
let arr = str.split('');
let sum = 0;
for (let i = 0; i < arr.length; i++) {
sum += Number(arr[i]);
}
console.log(sum);
Resultat av kjøring av kode:
15
Eksempel . Anvendelse
Det er gitt et tall. La oss skrive hvert siffer
av dette tallet til et separat array-element.
Det er en utfordring her - split brukes
bare på strenger, og vi har et tall. La oss konvertere
tallet først til en streng med String,
og deretter bruke split:
let num = 12345;
let str = String(num);
let arr = str.split('');
console.log(arr);
Resultat av kjøring av kode:
['1', '2', '3', '4', '5']