/Adición precisa y resta. Por ejemplo, 0.1+0.2 = 0.3 o 0.1-0.2 = -0.1
La copia del código es la siguiente:
function addfn (dataOne, dataatWo) {
var dataOneInt = dataone.ToString (). Split (".") [0];
var dataOnefloat = "";
var datatwoint = datatWo.ToString (). Split (".") [0];
var dataTWofloat = "";
var longOne = 0;
var longitudTwo = 0;
var maxLength = 0;
if (dataone.ToString (). Split ("."). Longitud == 2) {
dataOnefloat = dataone.ToString (). Split (".") [1];
longOne = dataOnefloat.ToString (). Longitud;
}
if (datatWo.ToString (). Split ("."). Longitud == 2) {
datatwofloat = datatWo.ToString (). Split (".") [1];
longitudTwo = DatatWofloat.ToString (). Longitud;
}
maxLength = Math.max (longOne, longitudTwo);
para (var i = 0; i <maxlength-longitude; i ++) {
dataonefloat+= "0";
}
for (var i = 0; i <maxLength-longitud
datatwofloat+= "0";
}
/**
*Amplificación múltiple de dos datos
* Haz que todos se conviertan en enteros. Porque el cálculo entero
*Más preciso.
*/
var uno = dataOnint+""+dataoneFloat;
var two = datatwoint+""+datatwofloat;
// alerta ("dataone:"+dataone+"datatwo:"+datatwo+"one:"+one+"two:"+two);
/**
*Después de que los datos se amplíen, el resultado calculado será
* Luego encoge el mismo múltiplo
*Luego obtenga el resultado correcto
*/
VAR result = (número (uno)+número (dos))/Math.Pow (10, maxLength);
resultado de retorno;
}