Метод 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']