Método split

O método split divide uma string em um array pelo separador especificado no primeiro parâmetro. Se não for especificado - a string inteira será retornada. Se for especificado como aspas vazias, cada caractere da string será colocado em um elemento separado do array. Um segundo parâmetro opcional permite especificar o número máximo de elementos no array resultante.

Sintaxe

javascriptstring.split([separador], [número máximo de elementos]);

Exemplo

Suponha uma string com hífens. Vamos dividir essa string em um array usando o separador '-':

javascriptlet str = 'ab-cd-ef';
let arr = str.split('-');

console.log(arr);

Resultado da execução do código:

javascript['ab', 'cd', 'ef']

Exemplo

Vamos dividir a string novamente pelo separador '-', mas especificando como segundo parâmetro o número máximo de elementos no array resultante, por exemplo, 2. Neste caso, apenas 2 elementos serão armazenados no array:

javascriptlet str = 'ab-cd-ef';
let arr = str.split('-', 2);

console.log(arr);

Resultado da execução do código:

javascript['ab', 'cd']

Exemplo

Vamos colocar cada caractere da string em um elemento separado do array:

javascriptlet str = 'abcde';
let arr = str.split('');

console.log(arr);

Resultado da execução do código:

javascript['a', 'b', 'c', 'd', 'e']

Exemplo

Vamos colocar os primeiros 3 caracteres da string em elementos separados do array:

javascriptlet str = 'abcde';
let arr = str.split('', 3);

console.log(arr);

Resultado da execução do código:

javascript['a', 'b', 'c']

Exemplo

Vamos usar split para dividir uma string com números. Observe que o resultado será um array de strings, e não um array de números:

javascriptlet str = '12345';
let arr = str.split('');

console.log(arr);

Resultado da execução do código:

javascript['1', '2', '3', '4', '5']

Exemplo . Aplicação

Vamos inverter os caracteres da string na ordem reversa. Para isso, dividimos a string em um array usando split com o separador '' (isso colocará cada caractere da string em um elemento separado do array), inverteremos este array usando reverse e depois juntaremos o array invertido novamente usando join:

javascriptlet str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');

console.log(res);

Resultado da execução do código:

javascript'987654321'

Exemplo . Aplicação

Vamos simplificar a solução do problema anterior - unir todos os comandos em uma cadeia:

javascriptlet str = '123456789';
let res = str.split('').reverse().join('');

console.log(res);

Resultado da execução do código:

javascript'987654321'

Exemplo . Aplicação

Dada uma string com dígitos. Vamos encontrar a soma dos dígitos desta string. Para isso, dividiremos a string em um array e, em seguida, percorreremos este array e encontraremos sua soma. Cuidado: split retorna strings, portanto, ao somar, converta esses dígitos-strings em números reais usando Number:

javascriptlet str = '12345';
let arr = str.split('');
let sum = 0;

for (let i = 0; i < arr.length; i++) {
  sum += Number(arr[i]);
}

console.log(sum);

Resultado da execução do código:

javascript15

Exemplo . Aplicação

Dado um número. Vamos colocar cada dígito deste número em um elemento separado do array. Há um detalhe - split é aplicado apenas a strings, e temos um número. Vamos primeiro converter o número para string usando String, e então aplicar split:

javascriptlet num = 12345;
let str = String(num);
let arr = str.split('');

console.log(arr);

Resultado da execução do código:

javascript['1', '2', '3', '4', '5']

Veja também

  • método join,
    que une elementos de um array em uma string
  • método split,
    que divide uma string por uma expressão regular
  • método reverse,
    que altera a ordem dos elementos de um array para a ordem inversa
  • propriedade length,
    que permite saber o comprimento de uma string