JavaScript метод String.prototype.split()
Определение и применение
JavaScript метод split() позволяет разбить строки на массив подстрок, используя заданную строку
разделитель для определения места разбиения.
Индексы и длины здесь измеряются в кодовых единицах UTF-16. Например, "😀".length равно 2;
разрезание по индексу может разделить суррогатную пару. Исходная строка не изменяется.
При разделителе с захватывающими группами их значения тоже попадают в массив и учитываются в limit.
limit: 0 даёт пустой массив. Без разделителя или при undefined возвращается массив из
исходной строки.
Поддержка браузерами
Спецификация: ecma262
Поддерживается во всех основных браузерах с 2015 года.
| Возможность | Компьютеры | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
split | 1 | 12 | 1 | 3 | 1 | 18 | 4 | 10.1 | 1 | 1.0 | 4.4 | 1 |
поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31
JavaScript синтаксис
// возвращает массив содержащий один элемент, состоящий из всей строки
string.split();
// использование строки разделителя для определения места разбиения
string.split( separator );
// использование строки разделителя для определения места разбиения с ограничением количества элементов результата
string.split( separator, limit );
Спецификация
ECMAScript: String.prototype.split()
Значения параметров
| Параметр | Описание |
|---|---|
separator |
Строка разделитель, которая обозначает точки, в которых должно происходить каждое разбиение. В качестве разделителя может выступать как строковое значение, так и регулярное выражение. При обнаружении разделитель удаляется из строки, а подстрока добавляется в массив. Если разделитель содержит более одного символа, то вся строка должна представлять точку разделения. Если разделитель опущен или не найден, то возвращаемый массив будет содержать один элемент, состоящий из всей строки. Если в качестве разделителя используется пустая строка, то строка разделяется между кодовыми единицами UTF-16. Необязательный параметр. |
limit |
Целое число, указывающее максимальное количество элементов результата. Когда этот параметр задан, метод
split() разбивает строку при каждом возникновении указанного разделителя, но останавливается,
когда количество элементов в массиве достигнет заданного значения. Возвращаемый массив может содержать меньше
записей, чем задано значением limit в том случае, если конец строки будет достигнут до достижения
указанного предела. Необязательный параметр.
|
Примеры, попробуйте сами
В примере «Разделители и ограничение результата» показан результат вызова метода.
Разделители и ограничение результата
Измените исходную строку или аргумент метода и сравните результат после запуска.
index.html
<html lang="ru">
<head>
<meta charset="UTF-8" />
<title>Разделители и ограничение результата</title>
</head>
<body>
<p>Результат выполнения выводится в консоль.</p>
</body>
</html>
main.js
const string1 = 'H e l l o'
const string2 = 'W,o,r,l,d'
const string3 = 'abbaabbaabba'
const string4 = 'H e l l o w o r l d'
console.log(string1.split())
console.log(string1.split(' '))
console.log(string2.split(','))
console.log(string3.split('bb'))
console.log(string4.split(' ', 4))
console.log('a2b3c4d'.split(/[0-9]/))
console.log('a2b3'.split(/(\d)/))
console.log('abc'.split('', 0))