Recientemente desarrollé una aplicación para descubrir cuál sería el nuevo sueldo de un empleado con base en el porcentaje de aumento que recibió.
const sueldo = TomaSueldoDelEmpleado();
const aumento = 20;
const nuevoSueldo = ( sueldo * aumento)/100) + sueldo;
console.log( "Su nuevo sueldo es: " +nuevoSueldo );
¡La respuesta al nuevo sueldo fue 3001500
! Este resultado ocurrió porque los datos provienen de un formulario HTML y, como razón de eso, la variable sueldo
es una string.
Aunque JavaScript es un lenguaje de tipo débil y puede realizar operaciones de resta, división y multiplicación que involucran strings, no comprende una operación de suma que involucre strings. Lo que hace es concatenar, es decir, une estas dos strings.
Para que funcione la lógica de la aplicación, la variable sueldo necesita convertirse en un número.
En JavaScript tenemos una función llamada parseInt(), que, en otras palabras, analizará la string y devolverá un número entero. Ahora, usando la función, el código de la aplicación se ve así:
const sueldo = tomaSueldoDelEmpleado();
const sueldoFormateado = parseInt(sueldo);
const aumento = 20;const nuevoSueldo = ( sueldo * aumento)/100) + sueldoFormateado;
console.log( "Su nuevo sueldo es: " + nuevoSueldo );
Dado que los cálculos de salario generalmente usan representación de puntos flotantes, es decir, contienen casas decimales, podemos usar la función parseFloat() que analizará justamente la string y devolverá un número con representación decimal, es decir, con punto flotante.
const sueldo = tomaSueldoDelEmpleado();
const aumento = 0.9;
const sueldoFormateado = parseFloat(sueldo);
const nuevoSueldo = ( sueldo * aumento)/100) + sueldoFormateado;console.log( "Su nuevo sueldo es: " +nuevoSueldo );
Podemos ver que dependiendo del tipo de entrada que reciba la función puede cambiar su comportamiento y afectar nuestra lógica dentro del sistema.
Teniendo en cuenta que en ocasiones capturaremos datos de los usuarios para realizar alguna operación de adición, debemos recordar que, muchas veces estas entradas vendrán en formato de string.
Por tanto, para no correr el riesgo de concatenar estos datos en lugar de hacer una suma, siempre es importante recordar utilizar las funciones parseInt()
o parseFloat()
dependiendo del tipo de número que se utilizará para realizar las operaciones.
Si le interesa cómo funciona JavaScript y cómo puede usarlo mejor, aquí en Alura tenemos una Formación en desarrollo JavaScript. Ahí verás cómo programar en JavaScript, usar expresiones regulares, aprender desarrollo web, entre otras cosas.
Puedes leer también:
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Puedes realizar el pago de tus planes en moneda local en los siguientes países:
País | |||||||
---|---|---|---|---|---|---|---|
Plan Semestral |
487.37
BOB |
69289.36
CLP |
307472.10
COP |
65.90
USD |
264.35
PEN |
1435.53
MXN |
2978.57
UYU |
Plan Anual |
738.82
BOB |
105038.04
CLP |
466107.17
COP |
99.90
USD |
400.74
PEN |
2176.17
MXN |
4515.32
UYU |
Acceso a todos
los cursos
Estudia las 24 horas,
dónde y cuándo quieras
Nuevos cursos
cada semana