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