Método split
El método split divide
una cadena en un array según el separador
especificado en el primer parámetro.
Si no se especifica, se devuelve la cadena
completa. Si se especifica como comillas vacías,
cada carácter de la cadena se convertirá en un
elemento separado del array. En el segundo parámetro
opcional se puede indicar la cantidad máxima
de elementos en el array resultante.
Sintaxis
cadena.split([separador], [cantidad máxima de elementos]);
Ejemplo
Supongamos que tenemos una cadena con guiones.
Dividamos esta cadena en un array usando el separador
'-':
let str = 'ab-cd-ef';
let arr = str.split('-');
console.log(arr);
Resultado de ejecutar el código:
['ab', 'cd', 'ef']
Ejemplo
Dividamos nuevamente la cadena por el separador
'-', pero esta vez indiquemos en el segundo
parámetro la cantidad máxima de elementos en el array
resultante, por ejemplo, 2. En este caso, solo
2 elementos se guardarán en el array:
let str = 'ab-cd-ef';
let arr = str.split('-', 2);
console.log(arr);
Resultado de ejecutar el código:
['ab', 'cd']
Ejemplo
Guardemos cada carácter de la cadena en un elemento separado del array:
let str = 'abcde';
let arr = str.split('');
console.log(arr);
Resultado de ejecutar el código:
['a', 'b', 'c', 'd', 'e']
Ejemplo
Guardemos los primeros 3 caracteres de la cadena
en elementos separados del array:
let str = 'abcde';
let arr = str.split('', 3);
console.log(arr);
Resultado de ejecutar el código:
['a', 'b', 'c']
Ejemplo
Dividamos una cadena con números usando split.
Preste atención a que el resultado será un array de cadenas,
no un array de números:
let str = '12345';
let arr = str.split('');
console.log(arr);
Resultado de ejecutar el código:
['1', '2', '3', '4', '5']
Ejemplo . Aplicación
Invertimos el orden de los caracteres de la cadena.
Para ello, dividimos la cadena en un array
usando split con el separador ''
(esto colocará cada carácter de la cadena en un elemento
separado del array), invertimos este array
usando reverse
y luego unimos el array invertido nuevamente
usando join:
let str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');
console.log(res);
Resultado de ejecutar el código:
'987654321'
Ejemplo . Aplicación
Simplifiquemos la solución de la tarea anterior - unamos todos los comandos en una cadena:
let str = '123456789';
let res = str.split('').reverse().join('');
console.log(res);
Resultado de ejecutar el código:
'987654321'
Ejemplo . Aplicación
Se da una cadena con dígitos. Encontremos la suma de los dígitos
de esta cadena. Para ello, dividimos la cadena
en un array, y luego recorremos este array y
encontramos su suma. Hay una trampa: split
devuelve cadenas, por lo tanto, al sumar
convertiremos estos dígitos-cadena en números reales
usando 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);
Resultado de ejecutar el código:
15
Ejemplo . Aplicación
Se da un número. Guardemos cada dígito
de este número en un elemento separado del array.
Aquí hay una trampa - split se aplica
solo a cadenas, y nosotros tenemos un número. Primero convertimos
el número a cadena usando String,
y luego aplicamos split:
let num = 12345;
let str = String(num);
let arr = str.split('');
console.log(arr);
Resultado de ejecutar el código:
['1', '2', '3', '4', '5']