Ejemplo de cadena dividida de JavaScript: cómo dividir una cadena en una matriz en JS

Una cadena es una estructura de datos que representa una secuencia de caracteres y una matriz es una estructura de datos que contiene varios valores.

Y ¿sabía usted? Una cadena se puede dividir en una matriz de varias cadenas utilizando el splitmétodo. Veamos cómo funciona eso con algunos ejemplos.

TL; DR

Si solo quieres el código, aquí tienes:

const publisher = 'free code camp' publisher.split(' ') // [ 'free', 'code', 'camp' ] 

Sintaxis

Según MDN, la sintaxis que necesitará para dividir la cadena es str.split([separator[, limit]]). Si aplicamos esto al ejemplo anterior:

  • str es publisher
  • separator es ' '
  • no hay limit

¿Cuándo necesitas dividir una cuerda?

Ejemplo 1: obtener parte de una cadena

Aquí hay un ejemplo común que implica obtener el token de un encabezado de autenticación que es parte de un sistema de autenticación basado en token.

Si esto no significa nada para ti, está bien. Todo lo que necesita saber para el siguiente ejemplo es que hay una cadena con el valor bearer token, pero solo tokenes necesaria (ya que esta es la parte que identifica al usuario):

const authHeader = 'bearer token' const split = authHeader.split(' ') // (1) [ 'bearer', 'token' ] const token = split[1] // (2) token

Esto es lo que está sucediendo en el código anterior:

  1. La cadena se divide con ' 'el separador
  2. Se accede a la segunda entrada de la matriz

Ejemplo 2: aplicar métodos de matriz a una cadena

A menudo, la entrada a la que se le da es una cadena, pero que desea aplicar métodos de arreglos a él (p. map, filterO reduce).

Por ejemplo, digamos que le dan una cadena de código morse y quiere ver lo que se lee en inglés:

const morse = '-.-. --- -.. .' // (1) const morseToChar = { '-.-.': 'c', '-..': 'd', '.': 'e', '---': 'o', } const morseArray = morse.split(' ') // (2) [ '-.-.', '---', '-..', '.' ] const textArray = morseArray.map((char) => morseToChar[char]) // (3) [ 'c', 'o', 'd', 'e' ] const text = textArray.join(") // (4) 

Esto es lo que está sucediendo en el código anterior:

  1. Se crea un objeto literal para asignar caracteres morse al alfabeto inglés
  2. El código morse se divide en una matriz con a ' 'como separador. (Sin ' 'como argumento, terminaría con una matriz que tiene entradas separadas para cada .y -).
  3. La matriz de código morse se asigna / transforma a una matriz de texto
  4. Se crea una cadena a partir de la matriz con ''el separador. (Sin ''como argumento, la salida sería c,o,d,e.)

Cómo agregar un límite para dividir

Según MDN, también es posible pasar a limitcomo argumento a split. Nunca he necesitado hacer esto, pero así es como puedes aplicarlo:

const publisher = 'free code camp' publisher.split(' ', 1) // [ 'free' ] 

En el ejemplo anterior, la matriz está limitada a una entrada. Sin él, el valor de la matriz sería [ 'free', 'code', 'camp' ].

Antes de que te vayas…

¡Gracias por leer hasta aquí! Escribo sobre mis experiencias profesionales y educativas como desarrollador de software autodidacta, así que siéntase libre de visitar mi sitio web o suscribirse a mi boletín para obtener más contenido.

También podría gustarte:

  • Aprenda JavaScript con estos recursos
  • Material de aprendizaje: desarrollo de software (comenzando con Introducción a CS)