Metode split
Metode split sadala
virknes masīvā atbilstoši
pirmajā parametrā norādītajam atdalītājam.
Ja tas nav norādīts - tiks atgriezta visa
virkne. Ja tas ir norādīts kā tukšas pēdiņas,
tad katrs virknes simbols nonāks atsevišķā
masīva elementā. Otro neobligāto
parametru var izmantot, lai norādītu maksimālo
elementu skaitu iegūtajā masīvā.
Sintakse
virkne.split([atdalītājs], [maksimālais elementu skaits]);
Piemērs
Pieņemsim, ka ir dota kāda virkne ar defisiem. Sadalīsim
šo virkni masīvā atbilstoši atdalītājam
'-':
let str = 'ab-cd-ef';
let arr = str.split('-');
console.log(arr);
Koda izpildes rezultāts:
['ab', 'cd', 'ef']
Piemērs
Vēlreiz sadalīsim virkni atbilstoši atdalītājam
'-', tomēr otrajā parametrā norādīsim
maksimālo elementu skaitu iegūtajā
masīvā, piemēram, 2. Šajā gadījumā
masīvā ierakstīsies tikai 2 elementi:
let str = 'ab-cd-ef';
let arr = str.split('-', 2);
console.log(arr);
Koda izpildes rezultāts:
['ab', 'cd']
Piemērs
Ierakstīsim katru virknes simbolu atsevišķā masīva elementā:
let str = 'abcde';
let arr = str.split('');
console.log(arr);
Koda izpildes rezultāts:
['a', 'b', 'c', 'd', 'e']
Piemērs
Ierakstīsim pirmos 3 virknes simbolus
atsevišķos masīva elementos:
let str = 'abcde';
let arr = str.split('', 3);
console.log(arr);
Koda izpildes rezultāts:
['a', 'b', 'c']
Piemērs
Izmantojot split, sadalīsim
virkni ar skaitļiem. Pievērsiet uzmanību tam,
ka rezultātā tiks iegūts virkņu masīvs,
nevis skaitļu masīvs:
let str = '12345';
let arr = str.split('');
console.log(arr);
Koda izpildes rezultāts:
['1', '2', '3', '4', '5']
Piemērs . Pielietojums
Apgriezīsim virknes simbolus apgrieztā
secībā. Lai to izdarītu, sadalīsim virkni masīvā
ar split palīdzību atbilstoši atdalītājam ''
( tas ievietos katru virknes simbolu atsevišķā
masīva elementā), apgriezīsim šo masīvu
ar reverse
palīdzību un tad sapludināsim apgriezto masīvu atpakaļ
ar join palīdzību:
let str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');
console.log(res);
Koda izpildes rezultāts:
'987654321'
Piemērs . Pielietojums
Vienkāršosim iepriekšējā uzdevuma risinājumu - apvienosim visas komandas ķēdē:
let str = '123456789';
let res = str.split('').reverse().join('');
console.log(res);
Koda izpildes rezultāts:
'987654321'
Piemērs . Pielietojums
Dota virkne ar cipariem. Atradīsim ciparu summu
no šīs virknes. Lai to izdarītu, sadalīsim virkni
masīvā un pēc tam izskatīsim šo masīvu un
atradīsim tā summu. Mūs gaida lamata: split
atgriež virknes, tāpēc summējot
pārveidosim šos ciparus-virknes par īstiem
skaitļiem ar Number palīdzību:
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);
Koda izpildes rezultāts:
15
Piemērs . Pielietojums
Dots skaitlis. Ierakstīsim katru ciparu
no šī skaitļa atsevišķā masīva elementā.
Šeit ir lamata - split tiek lietots
tikai virknēm, bet mums ir skaitlis. Pārveidosim
vispirms skaitli par virkni ar String palīdzību,
un tad pielietosim split:
let num = 12345;
let str = String(num);
let arr = str.split('');
console.log(arr);
Koda izpildes rezultāts:
['1', '2', '3', '4', '5']