Código de JavaScript - Simular la función Trim() en JavaScript

Simular la función Trim() en JavaScriptgráfica de visualizaciones


JavaScript

estrellaestrellaestrellaestrellaestrella(20)
Publicado el 01 de Mayo del 2002 por Jesus Parra
86.503 visualizaciones desde el 01 de Mayo del 2002. Una media de 119 por semana
Simula a la famosa funcion Trim() que otros lenguajes implementan, desafortunadamente Javascript no cuenta con ella, espero les sirva.

Versión 1
estrellaestrellaestrellaestrellaestrella(20)

Publicado el 01 de Mayo del 2002gráfica de visualizaciones de la versión: Versión 1
86.504 visualizaciones desde el 01 de Mayo del 2002. Una media de 119 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<HTML>
<HEAD>
<TITLE>Funcion Trim en Javascript</TITLE>
<Script Language="JavaScript">
 
function trim(cadena)
{
	for(i=0; i<cadena.length; )
	{
		if(cadena.charAt(i)==" ")
			cadena=cadena.substring(i+1, cadena.length);
		else
			break;
	}
 
	for(i=cadena.length-1; i>=0; i=cadena.length-1)
	{
		if(cadena.charAt(i)==" ")
			cadena=cadena.substring(0,i);
		else
			break;
	}
 
	forma.caja2.value=cadena;
}
 
function aviso()
	{
		lon1 = forma.caja1.value;
		lon2 = forma.caja2.value;
		forma.len1.value = lon1.length;
		forma.len2.value = lon2.length;
		forma.len1.disabled = true;
		forma.len2.disabled = true;
	}
</Script>
 
</HEAD>
<BODY>
 
<FORM METHOD=POST ACTION="" NAME=forma>
	<INPUT TYPE="text" NAME="caja1">  <INPUT TYPE="text" NAME="len1" size=3 readonly> Longitud de la cadena antes de la funcion Trim.<BR>
	<INPUT TYPE="text" NAME="caja2" readonly>  <INPUT TYPE="text" NAME="len2" size=3 readonly> Longitud de la cadena despues de la funcion Trim.<BR>
	<INPUT TYPE="button" NAME="trimmer" value="Quitar espacios" Onclick="trim(forma.caja1.value);aviso();">
</FORM>
 
</BODY>
</HTML>



Comentarios sobre la versión: Versión 1 (20)

Pablo Arias
30 de Junio del 2005
estrellaestrellaestrellaestrellaestrella
Excelente tu funcion. Muchas gracias
Responder
Luciano
15 de Noviembre del 2006
estrellaestrellaestrellaestrellaestrella
me funciono muy bien el codigo, se agradece la colaboracion y la buena onda para subir este tipo de codigos GRACIAS
Responder
Marc
22 de Junio del 2007
estrellaestrellaestrellaestrellaestrella
yo simplificaría el proceso usando una expresión regular:

valor = valor.replace(/^\s+|\s+$/,"");

saludos!
Responder
Rogelio Plata
07 de Diciembre del 2007
estrellaestrellaestrellaestrellaestrella
Pues sí, la función estaría mas simple usando expresiones regulares, aunque la expresión que pusieron solo recortaría los espacios de la izquierda ó los de la derecha, no ambos a la vez.

function trim(caja)
{
caja.value = caja.value.replace( /s*/,"" ); // LTrim
caja.value = caja.value.replace( /s*$/,"" ); // RTrim
}

.
.
.
<INPUT TYPE="button" NAME="trimmer" value="Quitar espacios" Onclick="trim(forma.caja1);aviso();">

Una version mas compacta:

function trim(caja)
{
caja.value = caja.value.replace( /s*/,"" ).replace( /s*$/,"" );
}
Responder
Rogelio Plata
07 de Diciembre del 2007
estrellaestrellaestrellaestrellaestrella
Corrigiendo la propuesta de Marc:

function trim(s){
return s.replace(/^s*|s*$/g,'');
}

<INPUT TYPE="button" NAME="trimmer" value="Quitar espacios" Onclick="forma.caja1.value=trim(forma.caja1.value);aviso();">

Al buen Marc solo le había faltado una "g". Ya aprendí para qué se usa el código ^ ,gracias Marc .
Responder
Eduardo
11 de Febrero del 2008
estrellaestrellaestrellaestrellaestrella
Me pareció genial la función, y muy muy útil.
Responder
Mario
24 de Febrero del 2008
estrellaestrellaestrellaestrellaestrella
function trim(cadena) {
result = ""; tmpString = "";
estado = 1;
for (i = 0; i < cadena.length; i++) {
if (estado == 1) {
if (cadena.charAt(i) != " ") {
estado = 2;
result = result + cadena.charAt(i);
}
} else if (estado == 2) {
if (cadena.charAt(i) == " ") {
tmpString = " ";
estado = 3;
} else
result = result + cadena.charAt(i);
} else if (estado == 3) {
tmpString = tmpString + cadena.charAt(i);
if (cadena.charAt(i) != " ") {
result = result + tmpString;
tmpString = "";
estado = 2;
}
}
}

return result;
}
Responder
Piro
18 de Marzo del 2008
estrellaestrellaestrellaestrellaestrella
más sencillito...

function trim(texto){
return texto.split(" ").join("");
}

Responder
jander
19 de Marzo del 2008
estrellaestrellaestrellaestrellaestrella
Yo la he visto usar en el código de esta página http://chorradas.rebuscando.info
Responder
Cuauhtémoc
21 de Mayo del 2008
estrellaestrellaestrellaestrellaestrella
Me gustó mucho tu codigo, me fue de mucha utilidad, Gracias :D
Responder
despistao
08 de Julio del 2008
estrellaestrellaestrellaestrellaestrella
muy buena función, me ha servido de mucho.

gracias
Responder
despistao
08 de Julio del 2008
estrellaestrellaestrellaestrellaestrella
y bueno esta de Piro:

function trim(texto){
return texto.split(" ").join("");
}

que decir..., genial xD

gracias
Responder
JuanBoca
28 de Agosto del 2008
estrellaestrellaestrellaestrellaestrella
Muchas gracias
Responder
Suru
23 de Septiembre del 2008
estrellaestrellaestrellaestrellaestrella
Muy buena función. La de expresiones regulares tiene menos código pero es más difícil de entender.

Para todos los que postearon negativo por considerar esta función mejor:

function trim(texto){
return texto.split(" ").join("");
}

si intrego " la función esa es muy penca "

la función emitirá "lafunciónesaesmuypenca".

Trim() tiene el significado de String.Trim(), en .Net, o sea, eliminar espacios adelante y atrás (como rtrim y ltrim de sql).

Saludos.
Responder
ARTURO
12 de Marzo del 2009
estrellaestrellaestrellaestrellaestrella
mmm no soi muy bueno en esto, pero creo que quedaria mejor asi:
Claro que si estoy mal corrijanme...

function trim(cadena)
{
for(i=0;cadena.charAt(i)==" ";i++){}
cadena=cadena.substring(i,cadena.length);

for(i=cadena.length-1;cadena.charAt(i)==" "; i=cadena.length-1){}
return cadena.substring(0,i);
}
Responder
ARTURO
17 de Marzo del 2009
estrellaestrellaestrellaestrellaestrella
so sorry... la funcion que puse tenia dos errores, que ahora corrijo...

function trim(cadena)
{
for(i=0;cadena.charAt(i)==" ";i++);
cadena=cadena.substring(i,cadena.length);

for(i=cadena.length-1;cadena.charAt(i)==" ";i--);
return cadena.substring(0,i+1);
}
Responder
César Martínez
11 de Mayo del 2010
estrellaestrellaestrellaestrellaestrella
una funcion optima en cuanto al uso de recursos, rapida y eficiente en el uso de memoria

http://geekrazzek.blogspot.com/2010/04/trim-en-javascript.html
Responder
Edgar Gonzalez
07 de Octubre del 2010
estrellaestrellaestrellaestrellaestrella
Gracias, muy util!!
Responder
William
16 de Julio del 2014
estrellaestrellaestrellaestrellaestrella
Muchas gracias..!
Responder
Dinora
20 de Agosto del 2015
estrellaestrellaestrellaestrellaestrella
mas practico asi:
function trim(cadcar){
return cadcar.replace(/^\s*|\s*$/g,"");}
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s178