A split metódus
A split metódus
egy sztringet tömbbe oszt fel
az első paraméterben megadott
elválasztó alapján.
Ha nincs megadva, akkor a teljes
sztringet visszaadja.
Ha üres idézőjelekkel van megadva,
akkor a sztring minden karaktere
különálló tömbelem lesz.
A második, opcionális paraméterrel
megadhatjuk a kapott tömbben levő
elemek maximális számát.
Szintaxis
sztring.split([elválasztó], [elemek maximális száma]);
Példa
Legyen adott egy kötőjeleket tartalmazó sztring.
Osszuk fel ezt a sztringet egy tömbbe az
'-' elválasztó alapján:
let str = 'ab-cd-ef';
let arr = str.split('-');
console.log(arr);
A kód végrehajtásának eredménye:
['ab', 'cd', 'ef']
Példa
Osszuk ismét fel a sztringet az
'-' elválasztó alapján, de most
a második paraméterben adjuk meg
a kapott tömbben levő elemek maximális számát,
például 2-őt. Ebben az esetben a
tömbben csak 2 elem lesz:
let str = 'ab-cd-ef';
let arr = str.split('-', 2);
console.log(arr);
A kód végrehajtásának eredménye:
['ab', 'cd']
Példa
Írjuk a sztring minden karakterét külön tömbelembe:
let str = 'abcde';
let arr = str.split('');
console.log(arr);
A kód végrehajtásának eredménye:
['a', 'b', 'c', 'd', 'e']
Példa
Írjuk a sztring első 3 karakterét
külön tömbelemekbe:
let str = 'abcde';
let arr = str.split('', 3);
console.log(arr);
A kód végrehajtásának eredménye:
['a', 'b', 'c']
Példa
Osszuk fel a split segítségével
egy számokat tartalmazó sztringet. Figyeljünk
arra, hogy az eredmény egy sztringekből álló
tömb lesz, nem egy számokból álló tömb:
let str = '12345';
let arr = str.split('');
console.log(arr);
A kód végrehajtásának eredménye:
['1', '2', '3', '4', '5']
Példa . Alkalmazás
Fordítsuk meg a sztring karaktereit fordított
sorrendben. Ehhez osszuk fel a sztringet egy tömbbé
a split segítségével a ''
elválasztóval (ez a sztring minden karakterét külön
tömbelembe helyezi), fordítsuk meg ezt a tömböt
a reverse
segítségével, majd egyesítsük a megfordított tömböt vissza
a join
segítségével:
let str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');
console.log(res);
A kód végrehajtásának eredménye:
'987654321'
Példa . Alkalmazás
Egyszerűsítsük az előző feladat megoldását - összekapcsoljuk az összes parancsot egy láncba:
let str = '123456789';
let res = str.split('').reverse().join('');
console.log(res);
A kód végrehajtásának eredménye:
'987654321'
Példa . Alkalmazás
Adott egy számjegyeket tartalmazó sztring. Keressük meg a sztringben
levő számjegyek összegét.
Ehhez osszuk fel a sztringet egy tömbbé,
majd járjuk be ezt a tömböt és
keressük meg az összegét. Van egy csapda: a split
sztringeket ad vissza, ezért az összegzés során
alakítsuk át ezeket a számjegy-sztringeket valódi
számokká a Number segítségével:
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);
A kód végrehajtásának eredménye:
15
Példa . Alkalmazás
Adott egy szám. Írjuk a szám minden számjegyét
külön tömbelembe.
Itt van egy csapda - a split csak
sztringekre alkalmazható, nekünk pedig száma van. Alakítsuk
először a számot sztringgé a String
segítségével,
majd alkalmazzuk a split-et:
let num = 12345;
let str = String(num);
let arr = str.split('');
console.log(arr);
A kód végrehajtásának eredménye:
['1', '2', '3', '4', '5']