La función que me hace el cálculo es la siguiente:
Código
function calculate() { //Value taken in order to calculate y's value into the function from the textbox var x = parseInt(document.getElementById('f_Value').value); //L0 var l_0 = ((x - 50)*(x - Math.pow(3,4))*(x - Math.pow(1,6)))/((12 - 50) * (12 - Math.pow(3,4)) * (12 - Math.pow(1,6))); //L1 var l_1 = ((x - 12)*(x - Math.pow(3,4))*(x - Math.pow(1,6)))/((50 - 12) * (50 - Math.pow(3,4)) * (50 - Math.pow(1,6))); //L2 var l_2 = ((x - 12)*(x - 50)*(x - Math.pow(1,6)))/((Math.pow(3,4) - 12) * (Math.pow(3,4) - 50) * (Math.pow(3,4) - Math.pow(1,6))); //L3 var l_3 = ((x - 12)*(x - 50)*(x - Math.pow(3,4)))/((Math.pow(1,6) - 12) * (Math.pow(1,6)- 50) * (Math.pow(1,6) - Math.pow(3,4))); //Final value after calculating it inside our function. var v_Function = (2 * l_0) + (4 * l_1) + (100 * l_2) + (700 * l_3); alert(l_2); //alert("The Y value for " + x + " is: " + v_Function); }
f_Value es el id que identifica al textbox, si meto 30000 l_2 debería obtener el valor de 1, pero en lugar de ello me retorna: 157452780.85203367, no sé si ocurre algún tipo de desbordamiento. ¿Alguien podría echarme una mano?