Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] por qué parseInt

Estas en el tema de por qué parseInt en el foro de Javascript en Foros del Web. Hola, estoy empezando a estudiar Java Script y tengo una duda teórica. Siempre que pido ingresar un número tengo que pasarle el parseInt. En todos ...
  #1 (permalink)  
Antiguo 10/08/2013, 09:27
Avatar de Iballa  
Fecha de Ingreso: marzo-2013
Mensajes: 107
Antigüedad: 11 años, 1 mes
Puntos: 6
por qué parseInt

Hola, estoy empezando a estudiar Java Script y tengo una duda teórica.

Siempre que pido ingresar un número tengo que pasarle el parseInt.

En todos los ejercicios que veo de diversos tutoriales, hay que pasarle el parseInt a todos los números, ya sean enteros o no, y no entiendo el por qué. ¿no basta directamente con darle a la variable el número entero y ya está? ¿por qué si tu le das a una variable un número entero le tienes que pasar el parseInt después?

Lo siento, es una duda tonta, pero lo veo en todos lados y nunca entiendo el por qué.

Gracias si alguien me explica.

Saludos
  #2 (permalink)  
Antiguo 10/08/2013, 10:25
darkhack3r22
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: por qué parseInt

El parseInt convierte las cifras decimales a enteras y además las convierte en variables de texto. Ej: parseInt(4.8)=='4'.
  #3 (permalink)  
Antiguo 10/08/2013, 11:18
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: por qué parseInt

buenas @iballa,
lo más seguro es que los ejemplos que estás viendo tratan con información que provee el usuario. en todas las formas posible para proporcionar información por parte del usuario, javascript siempre la recibe como tipo de dato string. por tanto, para poder hacer una operación aritmética con ese string, tienes que convertirlo antes a integer o float. en el caso particular de parseInt, la función siempre devolverá un entero (ejemplo: -1, 0, 1). también tienes parseFloat que convierte el string a float (ejemplo: -1.1, 0.1, 1.1). es importante que hagas esa conversión porque, por ejemplo, el operador + tiene doble función. puede ser un operador aritmético para sumar como también puede ser el operador de concatenación en strings. es decir, '0' + 1 produce el string '01', mientras que la operación 0 + 1 produce el entero 1.

para que veas un ejemplo más claro de la situación:
Código:
alert(prompt("entra un numero") + 1); // se concatena el valor entrado ;
alert(parseInt(prompt("entra un numero")) + 1); // se suma el valor, siempre y cuando sea un numero valido ;
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #4 (permalink)  
Antiguo 11/08/2013, 23:08
Avatar de patilanz  
Fecha de Ingreso: enero-2012
Mensajes: 880
Antigüedad: 12 años, 3 meses
Puntos: 29
Respuesta: por qué parseInt

Bueno lo que dijo zerokilled solo voy a anadir que tambien se puede usar *1

Código Javascript:
Ver original
  1. alert(prompt("entra un numero")*1 + 1);
  #5 (permalink)  
Antiguo 12/08/2013, 10:18
Avatar de Iballa  
Fecha de Ingreso: marzo-2013
Mensajes: 107
Antigüedad: 11 años, 1 mes
Puntos: 6
Respuesta: por qué parseInt

Ah ok, ya entiendo...

al usar insertar los números mediante el teclado (con prompt) devuelve un string, no un número. Ese detalle importante no lo sabía.

Muchas gracias a todos¡

Etiquetas: string, variable
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 20:13.