¿Cómo eliminar espacios de una cadena usando JavaScript?
¿Cómo eliminar espacios en una cadena? Por ejemplo:
Aporte:
'/var/www/site/Brand new document.docx'
Producción:
'/var/www/site/Brandnewdocument.docx'
¿Este?
str = str.replace(/\s/g, '');
Ejemplo
var str = '/var/www/site/Brand new document.docx';
document.write( str.replace(/\s/g, '') );
Actualización: basado en esta pregunta , esto:
str = str.replace(/\s+/g, '');
es una mejor solución. Produce el mismo resultado, pero lo hace más rápido.
La expresión regular
\s
es la expresión regular de "espacios en blanco" y g
es la bandera "global", lo que significa coincidir con TODOS \s
(espacios en blanco).
+
Puede encontrar una gran explicación aquí .
Como nota al margen, puede reemplazar el contenido entre comillas simples por lo que desee, de modo que pueda reemplazar los espacios en blanco con cualquier otra cadena.
MÁS CORTO y MÁS RÁPIDO :str.replace(/ /g, '');
Punto de referencia:
Aquí mis resultados: (2018.07.13) MacOs High Sierra 10.13.3 en Chrome 67.0.3396 (64 bits), Safari 11.0.3 (13604.5.6), Firefox 59.0.2 (64 bits)):
cuerdas CORTAS
Cadena corta similar a los ejemplos de la pregunta OP
La solución más rápida en todos los navegadores es / /g
(regexp1a): Chrome 17,7 M (operación/seg), Safari 10,1 M, Firefox 8,8 M. La solución más lenta para todos los navegadores fue split-join
. Cambiar
o \s
agregar expresiones regulares ralentiza el procesamiento +
.i
cuerdas largas
Para cadenas de aproximadamente ~3 millones de caracteres, los resultados son:
- regexp1a : Safari 50.14 operaciones/seg, Firefox 18.57, Chrome 8.95
- regexp2b : Safari 38.39, Firefox 19.45, Chrome 9.26
- unión dividida : Firefox 26.41, Safari 23.10, Chrome 7.98,
Puede ejecutarlo en su máquina: https://jsperf.com/remove-string-spaces/1