split()

Содержание

split() - метод разбивает строку на массив строк используя для этого заданный разделитель.


Синтаксис

    
    str.split(separator, limit)
    

separator - условие по которому будет разделена строка. В качестве разделителя может выступать строковый литерал или регулярное выражение. Также можно использовать специальные символы, например перевод строки, кавычки или юникод. Параметр является необязательным.

limit - количество элементов, которые должен вернуть метод. Параметр необязательный, если пропустить в массив попадут все подстроки. Если задать, то split() все-равно разделит всю строку по разделителям, но возвратит только указанное количество.

При нахождении разделителя метод удаляет separator и возвращает подстроку.

Если задать в качестве разделителя пустое значение '', тогда каждый символ строки запишется в отдельный элемент массива.

Если при записи split() пропустить separator, то метод вернет массив с одним элементом, который будет содержать всю строку.

Разбить строку по разделителю

    
    let mySkills = 'Native JavaScript-React-HTML-CSS'
    mySkills = mySkills.split('-', 2)
    console.log(mySkills)
    

Результатом будет массив с двумя элементами: Native JavaScript и React

Разбить строку на символы

    
    let myDream = 'Хочу стать frontend разработчиком'

    let allSymbols = myDream.split('')
        
    for (let n = 0; n < allSymbols.length; n++) {
        console.log(allSymbols[n])
    }        
    

Здесь мы разделили строку myDream с помощью split(''), задав в качестве separator пустое значение. Все это записали в allSymbols - теперь там массив, где каждый элемент это символ нашей строки. Далее используя цикл for вывели в console все символы - каждый с новой строки.

Разбить строку используя регулярное выражение

    
    let topProgramLang = 'JavaScript-Python-Java-C++,PHP,C,C#'
    topProgramLang = topProgramLang.split(/,|-/)
    console.log(topProgramLang) 
    

/,|-/ в этом регулярном выражении мы указали разделители, которые необходимо учесть - запятая и дефис. В итоге получаем массив, где перечислены все языки программирования указанные изначально.

Вывести символы строки в обратном порядке

    
    let importanceSkills = 'React,TypeScript,CSS,HTML,JavaScript'
    importanceSkills = importanceSkills.split(',')
    importanceSkills = importanceSkills.reverse()
    importanceSkills = importanceSkills.join(', ')
    console.log(importanceSkills)
    

Для того, чтобы решить эту задачу нам понадобятся еще два метода reverse() и join(). Первый перевернет массив, а второй объединит элементы в строку. В итоге получим в console JavaScript, HTML, CSS, TypeScript, React

Сумма элементов массива

    
    let numForSum = '1,2,5,10,392,19,3,10'
    numForSum = numForSum.split(',')
    let sumNum = 0
        
    for (let n = 0; n < numForSum.length; n++) {
        sumNum += +(numForSum[n])
    }
        
    console.log(sumNum)
    

Выполняя подобные задачи стоит помнить, что метод split() записывает данные в массив в формате строки, поэтому перед тем, как складывать элементы необходимо сначала привести их к числу. Здесь это сделано с помощью + перед выражением. Также можно воспользоваться функцией Number(numForSum[n]).

Итого

1. Метод split() делит строку по разделителю и записывает все в массив.

2. В получившемся массиве, элементы хранятся в формате текст.

3. В параметрах метода, первым свойством задается разделитель, вторым ограничение на вывод элементов. Оба параметра не обязательны.