Foros del Web » Programando para Internet » Javascript »

Un Bug en parseInt ??

Estas en el tema de Un Bug en parseInt ?? en el foro de Javascript en Foros del Web. La otra vez estaba haciendo unas pruebas y supuestamente el parseInt es para convertir a entero... y funciona bien (supuestamente) Pero si hacen ésto: Cita: ...
  #1 (permalink)  
Antiguo 11/03/2005, 12:12
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 9 meses
Puntos: 50
Un Bug en parseInt ??

La otra vez estaba haciendo unas pruebas y supuestamente el parseInt es para convertir a entero... y funciona bien (supuestamente)

Pero si hacen ésto:

Cita:
var txt = "08"
var i = parseInt(txt);
alert(i);
var txt = "09"
var i = parseInt(txt);
alert(i);
Se llevarán la sorpesa que no devuelve 8 ni 9 sino 0

Al menos eso ocurren en IE, Mozilla, FireFox, aunque creo que en Opera no.

Bueno, mas que pregunta era un comentario...

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #2 (permalink)  
Antiguo 11/03/2005, 12:14
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 9 meses
Puntos: 50
Por cierto... eso lo pueden arreglar con ésto:

Cita:
var i = parseInt(txt,10);
alert(i);
raro no ??
  #3 (permalink)  
Antiguo 11/03/2005, 13:13
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Nunca se me había ocurrido probarlo También puede servir esto:

var txt = "09"
var i = Number(txt);
alert(i);

Saludos,
  #4 (permalink)  
Antiguo 04/05/2005, 06:34
 
Fecha de Ingreso: abril-2002
Mensajes: 1.014
Antigüedad: 22 años, 7 meses
Puntos: 8
Juer pues muchísimas gracias porque estaba usando parseInt y me tenía desquiciado !
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 18:40.