Метод split() на Javascript

Это руководство о том, как разделить строку с помощью JavaScript. Для этого мы будем использовать метод split (). Этот метод принимает один параметр: разделитель. Это символ, на который мы хотим разделить нашу строку.

Разделите строку JavaScript символом дефиса. Давайте начнем с разбиения строки на символ дефиса. Взгляните на следующий пример:

//Пример строки
varstr = ‘Hello-World’;

//Давайте разделим эту строку дефисом
varsplitString = str.split(‘-‘);

//Протоколируйте массив в консоль
console.log(splitString);

//Распечатайте предупреждение
alert(splitString[0] + ‘ и ‘+ splitString[1] + ‘ были разделены!’);

В приведенном выше коде JavaScript у нас есть переменная, содержащая строку “Hello-World”. Однако что, если мы хотим разделить эту строку символом дефиса? В этом случае мы просто передали символ дефиса в метод split (). Следовательно, метод split() вернет массив с нашей разделенной строкой:

Array(2)
0: »Hello»
1: »World»
length: 2
__proto__: Array (0)

Как видите, результирующий массив содержит две строки: “Hello” и “World”. Кроме того, символ дефиса, который изначально был в нашей строке, теперь исчез. Если вы запустите пример кода выше, ваш браузер распечатает следующее предупреждение:

Hello и World были разделены!

Разбиение строки JavaScript на несколько частей

В некоторых случаях символ-разделитель может существовать в нашей строке более одного раза.

//Пример строки с несколькими дефисами.
varstr = ‘Кошка-Собака-Рыба’;

//Разбить строку на массив
varsplitString = str.split(‘-‘);

//Запишите наш массив в консоль.
console.log(splitString);

Здесь вы можете видеть, что наша строка содержит два дефиса. В результате метод split() разделит нашу строку на три строки:

(3) [»Кошка»,»Собака»,»Рыба»]
0: »Кошка»
1: »Собака»
2: »Рыба»
length: 3
__proto__: Array (0)

Массив, который возвращает функция split (). Как вы можете видеть, нет никаких ограничений на количество частей, на которые может быть разделена ваша строка. Если бы в нашей строке было три дефиса, это привело бы к четырем “частям”.

Uncaught TypeError: split неопределен.

Если вы наблюдаете эту ошибку, то вполне вероятно, что вы вызываете метод split() для переменной, которая не является строкой. Возьмем в качестве примера следующий фрагмент кода:

//Число, содержащее точку / десятичный знак.
varnum = 123,99;

//Попытайтесь разделить число на десятичные разряды.
varsplitString = num.split(‘.’);

Здесь мы попытались разделить число на десятичные разряды. Однако рассматриваемая переменная на самом деле является переменной с плавающей точкой. В результате будет выброшен неперехваченный TypeError.

Чтобы исправить эту конкретную ошибку, нам нужно будет разобрать наш номер как строку JS, прежде чем мы попытаемся разделить его.

//Число, содержащее точку / десятичный знак.
varnum = 123,99;

//Преобразуем наш поплавок в строку.
num = num.toString();

//Попытайтесь разделить число на десятичные разряды.
varsplitString = num.split(‘.’);

На этот раз мы использовали метод toString() до того, как попытались использовать метод split (). Если вы запустите приведенный выше пример кода, то увидите, что он теперь работает.

И это все! Надеемся, это руководство избавит вас от головной боли!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *