Metoden split
Metoden split delar upp
en sträng i en array med den
avgränsare som anges i den första
parametern. Om den inte anges returneras
hela strängen. Om den anges som tomma citattecken,
kommer varje tecken i strängen att hamna i ett separat
arrayelement. I den andra valfria
parametern kan du ange det maximala
antalet element i den resulterande arrayen.
Syntax
sträng.split([avgränsare], [maximalt antal element]);
Exempel
Låt oss anta att vi har en sträng med bindestreck. Låt oss
dela upp denna sträng i en array med avgränsaren
'-':
let str = 'ab-cd-ef';
let arr = str.split('-');
console.log(arr);
Resultat av kodkörning:
['ab', 'cd', 'ef']
Exempel
Låt oss återigen dela upp strängen med avgränsaren
'-', men i den andra parametern anger vi
det maximala antalet element i den resulterande
arrayen, till exempel 2. I detta fall kommer endast
2 element att skrivas till arrayen:
let str = 'ab-cd-ef';
let arr = str.split('-', 2);
console.log(arr);
Resultat av kodkörning:
['ab', 'cd']
Exempel
Låt oss skriva varje tecken i strängen till ett separat arrayelement:
let str = 'abcde';
let arr = str.split('');
console.log(arr);
Resultat av kodkörning:
['a', 'b', 'c', 'd', 'e']
Exempel
Låt oss skriva de första 3 tecknen i strängen
till separata arrayelement:
let str = 'abcde';
let arr = str.split('', 3);
console.log(arr);
Resultat av kodkörning:
['a', 'b', 'c']
Exempel
Låt oss med split dela upp
en sträng med siffror. Var uppmärksam på
att resultatet blir en array av strängar,
inte en array av nummer:
let str = '12345';
let arr = str.split('');
console.log(arr);
Resultat av kodkörning:
['1', '2', '3', '4', '5']
Exempel . Tillämpning
Låt oss vända på tecknen i strängen i omvänd
ordning. För att göra detta delar vi upp strängen till en array
med split med avgränsaren ''
(detta placerar varje tecken i strängen i ett separat
arrayelement), vänder på denna array
med reverse
och sedan slår ihop den vända arrayen igen
med join:
let str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');
console.log(res);
Resultat av kodkörning:
'987654321'
Exempel . Tillämpning
Låt oss förenkla lösningen av föregående uppgift - låt oss sammanfoga alla kommandon till en kedja:
let str = '123456789';
let res = str.split('').reverse().join('');
console.log(res);
Resultat av kodkörning:
'987654321'
Exempel . Tillämpning
En sträng med siffror ges. Låt oss hitta summan av siffrorna
från denna sträng. För att göra detta delar vi upp strängen
till en array, och sedan itererar vi över denna array och
hittar dess summa. Det finns en hake: split
returnerar strängar, så när vi summerar
omvandlar vi dessa siffror-strängar till riktiga
nummer 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 kodkörning:
15
Exempel . Tillämpning
Ett nummer ges. Låt oss skriva varje siffra
i detta nummer till ett separat arrayelement.
Det finns en hake här - split används
bara för strängar, men vi har ett nummer. Låt oss först
omvandla numret till en sträng med String,
och sedan applicera split:
let num = 12345;
let str = String(num);
let arr = str.split('');
console.log(arr);
Resultat av kodkörning:
['1', '2', '3', '4', '5']