Metoda split

Metoda split razbije niz v tabelo po določenem ločilu v prvem parametru. Če ni določeno, bo vrnjen celoten niz. Če je določen kot prazen niz, bo vsak znak niza postal ločen element tabele. Z drugim neobveznim parametrom lahko določite največje število elementov v nastali tabeli.

Sintaksa

javascriptniz.split([ločilo], [največje število elementov]);

Primer

Naj bo podan nek niz z vezaji. Razdeli ta niz v tabelo po ločilu '-':

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

console.log(arr);

Rezultat izvedbe kode:

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

Primer

Ponovno razdeli niz po ločilu '-', vendar z drugim parametrom določi največje število elementov v nastali tabeli, na primer 2. V tem primeru bo v tabelo zapisanih le 2 elementa:

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

console.log(arr);

Rezultat izvedbe kode:

javascript['ab', 'cd']

Primer

Zapiši vsak znak niza v ločen element tabele:

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

console.log(arr);

Rezultat izvedbe kode:

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

Primer

Zapiši prvih 3 znakov niza v ločene elemente tabele:

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

console.log(arr);

Rezultat izvedbe kode:

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

Primer

Z split razdeli niz s številkami. Bodite pozorni na to, da bo rezultat tabela nizov, ne pa tabela števil:

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

console.log(arr);

Rezultat izvedbe kode:

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

Primer . Uporaba

Obrni znake niza v obratnem vrstnem redu. Če želite to narediti, razdelite niz v tabelo z split po ločilu '' (s tem boste vsak znak niza postavili v ločen element tabele), obrnite to tabelo z reverse in nato združite obrnjeno tabelo nazaj z join:

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

console.log(res);

Rezultat izvedbe kode:

javascript'987654321'

Primer . Uporaba

Poenostavimo rešitev prejšnje naloge - združimo vse ukaze v verigo:

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

console.log(res);

Rezultat izvedbe kode:

javascript'987654321'

Primer . Uporaba

Podan je niz s števkami. Poiščimo vsoto števk tega niza. Če želite to narediti, razdelite niz v tabelo in nato pregledajte to tabelo ter poiščite njeno vsoto. Čaka nas past: split vrača nize, zato pri seštevanju pretvorite te števke-nize v prave številke z 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);

Rezultat izvedbe kode:

javascript15

Primer . Uporaba

Podana je številka. Zapišimo vsako števko te številke v ločen element tabele. Tukaj je past - split se uporablja samo za nize, mi pa imamo številko. Pretvorimo najprej številko v niz z String, nato pa uporabimo split:

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

console.log(arr);

Rezultat izvedbe kode:

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

Glejte tudi

  • metoda join,
    ki združi elemente tabele v niz
  • metoda split,
    ki razdeli niz po regularnem izrazu
  • metoda reverse,
    ki spremeni vrstni red elementov v tabeli v obratnega
  • lastnost length,
    ki omogoča ugotovitev dolžine niza