Методот split
Методот split разделува
стринг во низа според наведениот
во првиот параметар разделувач.
Ако не е наведен - ќе се врати целата
стринг. Ако е наведен како празни наводници,
тогаш секој знак од стрингот ќе влезе во одделна
елемент на низата. Со вториот незадолжителен
параметар може да се наведе максималниот
број на елементи во добиената низа.
Синтакса
стринг.split([разделувач], [максимален број на елементи]);
Пример
Нека е даден некој стринг со цртички. Ајде
да го разделиме овој стринг во низа според разделувачот
'-':
let str = 'ab-cd-ef';
let arr = str.split('-');
console.log(arr);
Резултат од извршувањето на кодот:
['ab', 'cd', 'ef']
Пример
Ајде повторно да го разделиме стрингот според разделувачот
'-', меѓутоа со вториот параметар да го наведеме
максималниот број на елементи во добиената
низа, на пример, 2. Во овој случај во
низата ќе се запишат само 2 елементи:
let str = 'ab-cd-ef';
let arr = str.split('-', 2);
console.log(arr);
Резултат од извршувањето на кодот:
['ab', 'cd']
Пример
Ајде секој знак од стрингот да го запишеме во одделна елемент на низата:
let str = 'abcde';
let arr = str.split('');
console.log(arr);
Резултат од извршувањето на кодот:
['a', 'b', 'c', 'd', 'e']
Пример
Ајде првите 3 знаци од стрингот да ги запишеме
во одделни елементи на низата:
let str = 'abcde';
let arr = str.split('', 3);
console.log(arr);
Резултат од извршувањето на кодот:
['a', 'b', 'c']
Пример
Ајде со помош на split да го разделиме
стрингот со броеви. Обрнете внимание на тоа
дека како резултат ќе се добие низа од стрингови,
а не низа од броеви:
let str = '12345';
let arr = str.split('');
console.log(arr);
Резултат од извршувањето на кодот:
['1', '2', '3', '4', '5']
Пример . Примена
Ајде да ги превртиме знаците од стрингот во обратен
редослед. За ова, ќе го разделиме стрингот во низа
со помош на split според разделувачот ''
(ова ќе го смести секој знак од стрингот во одделна
елемент на низата), ќе ја превртиме оваа низа
со помош на reverse
и потоа ќе ја споиме превртената низа назад
со помош на join:
let str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');
console.log(res);
Резултат од извршувањето на кодот:
'987654321'
Пример . Примена
Да го поедноставиме решението на претходната задача - ќе ги споиме сите команди во синџир:
let str = '123456789';
let res = str.split('').reverse().join('');
console.log(res);
Резултат од извршувањето на кодот:
'987654321'
Пример . Примена
Даден е стринг со цифри. Ајде да ја најдеме сумата на цифрите
од овој стринг. За ова, ќе го разделиме стрингот
во низа, а потоа ќе ја преминеме оваа низа и
ќе ја најдеме нејзината сума. Не чека замка: split
враќа стрингови, па затоа при сумирање
ги преобразуваме овие цифри-стрингови во вистински
броеви со помош на 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);
Резултат од извршувањето на кодот:
15
Пример . Примена
Даден е број. Ајде секоја цифра
од овој број да ја запишеме во одделна елемент на низата.
Овде има замка - split се применува
само на стрингови, а ние имаме број. Да го преобразуваме
најпрво бројот во стринг со помош на String,
а потоа да го примениме split:
let num = 12345;
let str = String(num);
let arr = str.split('');
console.log(arr);
Резултат од извршувањето на кодот:
['1', '2', '3', '4', '5']