Meetod split

Meetod split jagab stringid massiiviks määratud esimese parameetri eraldaja järgi. Kui seda pole määratud - tagastatakse kogu string. Kui see on määratud tühjade jutumärkidena, siis iga stringi sümbol lisatakse eraldi massiivi elemendina. Teise valikulise parameetriga saab määrata maksimaalse elementide arvu saadud massiivis.

Süntaks

javascriptstring.split([eraldaja], [maksimaalne elementide arv]);

Näide

Olgu antud mingi string sidekriipsudega. Jagame selle stringi massiiviks eraldaja '-' järgi:

javascriptlet str = 'ab-cd-ef';
let arr = str.split('-');

console.log(arr);

Koodi täitmise tulemus:

javascript['ab', 'cd', 'ef']

Näide

Jagame stringi uuesti eraldaja '-' järgi, kuid teise parameetriga määrame maksimaalse elementide arvu saadud massiivis, näiteks 2. Sel juhul kirjutatakse massiivi ainult 2 elementi:

javascriptlet str = 'ab-cd-ef';
let arr = str.split('-', 2);

console.log(arr);

Koodi täitmise tulemus:

javascript['ab', 'cd']

Näide

Kirjutame iga stringi sümboli eraldi massiivi elemendisse:

javascriptlet str = 'abcde';
let arr = str.split('');

console.log(arr);

Koodi täitmise tulemus:

javascript['a', 'b', 'c', 'd', 'e']

Näide

Kirjutame esimesed 3 stringi sümbolit eraldi massiivi elementidesse:

javascriptlet str = 'abcde';
let arr = str.split('', 3);

console.log(arr);

Koodi täitmise tulemus:

javascript['a', 'b', 'c']

Näide

Jagame split abil stringi numbritega. Pane tähele, et tulemuseks on stringide massiiv, mitte numbrite massiiv:

javascriptlet str = '12345';
let arr = str.split('');

console.log(arr);

Koodi täitmise tulemus:

javascript['1', '2', '3', '4', '5']

Näide . Rakendus

Pöörame stringi sümbolid vastupidises järjekorras. Selleks jagame stringi massiiviks kasutades split eraldajaga '' (see asetab iga stringi sümboli eraldi massiivi elemendisse), pöörame selle massiivi ümber kasutades reverse ja seejärel liidame pööratud massiivi uuesti kokku kasutades join:

javascriptlet str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');

console.log(res);

Koodi täitmise tulemus:

javascript'987654321'

Näide . Rakendus

Lihtsustame eelmise ülesande lahendust - liidame kõik käsud ahelaks:

javascriptlet str = '123456789';
let res = str.split('').reverse().join('');

console.log(res);

Koodi täitmise tulemus:

javascript'987654321'

Näide . Rakendus

Antud string numbritega. Leiame nende numbrite summa sellest stringist. Selleks jagame stringi massiiviks ja seejärel loeme selle massiivi läbi ning leiame selle summa. Meid ootab lõks: split tagastab stringid, seega summeerimisel teisendame need stringid olevad numbrid päris numbriteks kasutades Number:

javascriptlet str = '12345';
let arr = str.split('');
let sum = 0;

for (let i = 0; i < arr.length; i++) {
  sum += Number(arr[i]);
}

console.log(sum);

Koodi täitmise tulemus:

javascript15

Näide . Rakendus

Antud number. Kirjutame iga selle numbri eraldi massiivi elemendisse. Siin on lõks - split rakendub ainult stringidele, aga meil on number. Teisendame kõigepealt numbri stringiks kasutades String, ja seejärel rakendame split:

javascriptlet num = 12345;
let str = String(num);
let arr = str.split('');

console.log(arr);

Koodi täitmise tulemus:

javascript['1', '2', '3', '4', '5']

Vaata ka

  • meetod join,
    mis liidab massiivi elemendid stringiks
  • meetod split,
    mis jagab stringi regulaaravaldise järgi
  • meetod reverse,
    mis muudab elementide järjekorra massiivis vastupidiseks
  • omadus length,
    mis võimaldab teada saada stringi pikkust