javascript - Vue Js - eliminar espacios de una cadena

CorePress2024-01-25  10

Let category = "Baby Dress"

Quiero recortarlo con espacios y texto en minúsculas. La salida como "vestido de bebé". Use el siguiente código. pero me devuelve "bebé" vestido".

category.trim(" ").toLowerCase()

Necesito entender por qué no funciona como esperaba y cuáles son las formas de hacerlo.



------------------------------------

No funciona como se esperaba porque la función .trim se usa para eliminar espacios en blanco de ambos lados de la cadena, no del medio.

Puedes usar

category.toLowerCase().split(" ").join("")

Aquí estoy poniendo las letras en minúsculas, dividiéndolas y luego uniéndolas.



------------------------------------

Puedes hacer así:

category.replace(/\s+/g, '').toLowerCase()

3

2

Eso solo eliminará el primer espacio.

– Talmacel Marian Silviu

28/03/2021 a las 13:48

y \s+ es más eficiente

- mariposa

28/03/2021 a las 14:13

eso es cierto :) en caso de que hubiera más de un espacio entre palabras

– Talmacel Marian Silviu

28/03/2021 a las 14:22



------------------------------------

El método trim solo elimina espacios al principio de la cadena. Lo que necesitas es reemplazar los espacios sin nada con el método de reemplazo usando expresiones regulares:

category.replace(/\s/g, "").toLowerCase();

2

2

La expresión regular suele ser más lenta que la función de división.

Dragón endotérmico

28/03/2021 a las 13:57

Estoy bastante seguro de que para lo que necesita, la diferencia será astronómicamente pequeña :)

– Talmacel Marian Silviu

28/03/2021 a las 13:59

randomThread
javascript - Interpretación de la lógica booleana en la consola de Google ChromeRecursividad aplicada a listas versus árboles en PythonDefinición: ¿puede un algoritmo ser una sola instrucción?Python ¿Cuál es una buena manera de asignar múltiples variables desde un archivo CSV?html: uso de consulta de medios para ejecutar