Foros del Web » Programando para Internet » Javascript »

facil y bonito

Estas en el tema de facil y bonito en el foro de Javascript en Foros del Web. esta pregunta es estupida pero ahi va.. como le puedo quitar los ceros a la izquieda a un nro en javascript? ej: 00000000000008273823 final: 8273823 ...
  #1 (permalink)  
Antiguo 12/02/2002, 07:57
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
facil y bonito

esta pregunta es estupida pero ahi va..

como le puedo quitar los ceros a la izquieda a un nro en javascript?

ej:
00000000000008273823

final:
8273823

:P
  #2 (permalink)  
Antiguo 12/02/2002, 09:33
 
Fecha de Ingreso: enero-2002
Mensajes: 47
Antigüedad: 22 años, 4 meses
Puntos: 0
Re: facil y bonito

Si es siempre un numero, utilizando la funcion matematica abs, te quita los ceros solo, por ejemplo....

a = 00000000000000873265
b = Math.abs(a)

El resultado de b va a ser 873265.

Probalo y fijate.

Cualquier cosa si es texto, postea un nuevo mensaje y buscamos que podemos hacer, ok? (Es que soy vago ;) )

Un saludo.

Andres.
  #3 (permalink)  
Antiguo 12/02/2002, 11:23
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: facil y bonito

ey amigo andres...
esa funcion esta muy buena pero el tiene dos detalles.
1° cuando le ingreso un numero muy gigante se marea un pokito:
ej: 000000939834872834728748384723
me arroja: 93983487283472874838472300
o sea me agrega mas ceros a la derecha...ni idea por ke

2° cuando hago a.length no me pezca el largo del dato...y eso es importante para mi para una validacion..
if (a.length>17)
{
alert("excedido maxion");
return false;
}

crees ke se pueda arreglar esto...mira ke yo en javascript doy bote...

;)
}
  #4 (permalink)  
Antiguo 12/02/2002, 13:34
 
Fecha de Ingreso: enero-2002
Mensajes: 47
Antigüedad: 22 años, 4 meses
Puntos: 0
Re: facil y bonito

Estuve buscando algo que te pueda servir y no encontre nada util :( ...., pero se me ocurrieron un par de ideas:
Que decis si en vez de hacer que ponga el numero absoloto haces por ejemplo:
Math.pow(numero, 1) (potencia del numero a la 1)
Math.round(numero) (Redondea el numero)
O bien hacer numero +1 y despues numero - 1, creo que tambien tendria que eliminar los ceros.

Fijate si con esas funciones te hace bien lo que queres. (No puedo probarlo, si no ya te decia)

Ah, antes que nada asegurate qe sea un numero, si no es, pone Dato = Number(numero) que lo convierte.....

Con respecto al tema de la comparacion, me parece que si es un numer no vas a poder "contar" los caracteres, asi que por ahi tenes dos opciones, lo convertis a cadena con dato = String(numero) o bien haces una comparacion asi:

if (numero>99999999999999999) {}

Esto para el caso de 17 cifras, ademas creo que en este caso no te importan los 0 a la izquierda porque no los tomaria en cuenta, asi que por ahi te ahorras trabajo....

Espero que te ayude.!!!

Andres.
  #5 (permalink)  
Antiguo 12/02/2002, 13:35
 
Fecha de Ingreso: enero-2002
Mensajes: 47
Antigüedad: 22 años, 4 meses
Puntos: 0
Re: facil y bonito

Ah, y no era tan facil y mucho menos bonito.!! :P :P ;)
  #6 (permalink)  
Antiguo 12/02/2002, 13:38
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: facil y bonito

jjejeeeee...
asi parecia...hare las pruebas y te aviso

gracis por tu tpo
:P
  #7 (permalink)  
Antiguo 12/02/2002, 14:50
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: facil y bonito

me salvaste caleta andres...
al final lo deje asi:

lo pase a numerico
<pre> Numero=Number(dato) </pre>
le hice un math
<pre> Numero=Math.abs(Numero) </pre>
lo pase a un strnig
<pre> Cadena=String(Numero) </pre>
pregunte si tenia mas de 17 caracteres
<pre> If (Cadena.lenght&gt;17){
alert(&quot;excedido maximo permitido&quot;)
return false;}
</pre>

solo para algunos caso se callo pero son minimos...
para estos:

9999999999999999
9999999999999998
9999999999999997
9999999999999996
9999999999999995
9999999999999994

gracias por tu ayuda compadre.
;) :P :)
  #8 (permalink)  
Antiguo 13/02/2002, 06:44
 
Fecha de Ingreso: enero-2002
Mensajes: 47
Antigüedad: 22 años, 4 meses
Puntos: 0
Re: facil y bonito

Me alegro que te halla servido.!! :)

Estuve buscando por este foro un mensaje que decia como interpreta el JS los numeros, que se publico hace algunos meses, para ver si se podia solucionar el problemita ese que no te toma esos valores, pero no lo pude encontrar... :( ...., si encuentro una solucion la posteo aqui mismo...

Un saludo.!!
Andres.!
  #9 (permalink)  
Antiguo 13/02/2002, 07:36
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: facil y bonito

ke eris buena onda...
a todo esto ke mala ke el zabaleta le haya ganado al chino ayer...pero en fin...cosas del futbol..
jjaaaa..
saludos amigo :P
  #10 (permalink)  
Antiguo 13/02/2002, 08:03
Avatar de Webstudio
Colaborador
 
Fecha de Ingreso: noviembre-2001
Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 22 años, 5 meses
Puntos: 69
Re: facil y bonito

Admito que mucho no se sobre Javascript, pero porque en vez de hacer todo eso lio, no probás tan solo sumandole 0 al numero.
En PHP sirve porque hace el Type Casting automáticamente.

Suerte
  #11 (permalink)  
Antiguo 13/02/2002, 09:30
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: facil y bonito

sumarle 0's?
pero la idea es quitarselos y luego contar el largo final.

asi como sale:
00000231231231231231231231111

dejarlos:
231231231231231231231111

contar los digitos:
24

si el largo mayor &gt;17: Error

es esop..
:P
  #12 (permalink)  
Antiguo 15/02/2002, 11:07
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: facil y bonito

eyyyyyyy........
por fin me dieron una funcion que le quitara todos los ceros a la izquierda y los caracteres no numericos...
aki esta por si a alguien le sirve

var CadenaInter=&quot;&quot;
for (c=0;c&lt;Cadena.length;c++){
if ((Cadena.substr(c,1)&gt;=&quot;0&quot;) &amp;&amp; (Cadena.substr(c,1)&lt;=&quot;9&quot;)) { CadenaInter=CadenaInter+Cadena.substr(c,1) }
}
Cadena=CadenaInter
for (c=0;c&lt;Cadena.length;c++){
if (Cadena.substr(c,1)!=&quot;0&quot;){var fin=c ;c=Cadena.length}
}

Cadena=Cadena.substr(fin,Cadena.length-fin)

:) ;) :P ;) :P
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:11.