Copier le code du code comme suit:
(Fonction () {)
var calc =
/ *
Fonction, ajoutant des fonctions pour obtenir des résultats précis d'une méthode supplémentaire
Remarque: il y aura des erreurs dans les résultats de JavaScript, et il sera évident lorsque les deux nombres de points flottants seront ajoutés. Cette fonction renvoie un résultat plus précis de l'addition.
Paramètres: Arg1: le premier numéro plus;
Appel: Calc.Add (Arg1, Arg2, D)
Valeur de retour: les résultats de deux nombres ajoutent
* /
Ajouter: fonction (arg1, arg2, d) {
arg1 = arg1.toString (), arg2 = arg2.ToString ();
Var arg1arr = arg1.split ("."), Arg2arr = arg2.split ("."), D1 = arg1arr.length == 2? [1]: "" ;;
var maxlen = math.max (d1.length, d2.length);
var m = math.pow (10, maxlen);
var result = nombre ((arg1 * m + arg2 * m) / m) .tofixed (maxlen));
var d = arguments [2];
RETOUR TYPE DE D === "Numéro"?
},
/ *
Fonction: Fonction de soustraction pour obtenir des résultats de soustraction précis
Remarque: La fonction renvoie un résultat de soustraction plus précis.
Paramètres: Arg1: le premier plus;
Appel: Calc.Sub (Arg1, Arg2)
Valeur de retour: le résultat de deux nombres réductions
* /
Sub: fonction (arg1, arg2) {
Return calcc.add (arg1, -number (arg2), arguments [2]);
},
/ *
Fonction: Fonction de multiplication, utilisée pour obtenir des résultats de multiplication précis
Remarque: La fonction renvoie un résultat de multiplication plus précis.
Paramètres: Arg1: la première multiplication; Arg2 deuxième multiplication;
Appel: Calc.mul (Arg1, Arg2)
Valeur de retour: le résultat de la multiplication de deux nombres
* /
Mul: fonction (arg1, arg2) {
var r1 = arg1.toString (), r2 = arg2.ToString (), m, résultat, d = arguments [2];
m = (r1.split (".") [1]? r1.split (".") [1] .length: 0) + (r2.split (".") [1]? R2.split (" ".") [1] .length: 0);
ResultVal = nombre (r1.replace (".", "") * Numéro (r2.replace (".", "") / Math.pow (10, m);
RETOURS TYPE DANS D! == "Numéro"?
},
/ *
Fonction: sauf la méthode pour obtenir des résultats de suppression précis
Remarque: La fonction renvoie le résultat de suppression plus précis.
Paramètres: Arg1: la division;
Appel: Calc.Div (Arg1, Arg2)
Valeur de retour: arg1 sauf les résultats de l'ARG2
* /
Div: Fonction (Arg1, Arg2) {
var r1 = arg1.toString (), r2 = arg2.ToString (), m, résultat, d = arguments [2];
m = (r2.split (".") [1]? r2.split (".") [1] .length: 0) - (r1.split (".")? R1.split ("". " ) [1] .length: 0);
resultVal = nombre (r1.replace (".", "") / nombre (r2.replace (".", "") * math.pow (10, m);
RETOURS TYPE DANS D! == "Numéro"?
},
/ *
Formater la valeur après être entré dans les cinq maisons.
@Param num valeur (nombre ou chaîne)
@param centre à conserver
@Param isthlee, avez-vous besoin de mille points 0: pas de besoin, 1: besoin (type numérique);
String de format @return, comme «1 234 567,45»
String @type
Appel: calcc.formatnumber (num, cent, isthle)
* /
FormatNumber: fonction FormatNumber (num, cent, isthle) {
num = num.toString ().
if (isnan (num)) // vérifie le nombre de valeurs d'admission pour les types numériques.
num = "0";
If (isnan (cent)) // assurez-vous que le petit nombre est introduit dans la valeur de type de valeur.
centre = 0;
Centre = ParseInt (centre);
Centre = Math.Abs (centre);
Si (Isnan (isthle)) // assurez-vous s'il doit être transmis en mille points dans des types numériques.
Isthle = 0;
isthle = parseint (isthle);
si (isthle <0)
Isthle = 0;
If (isthrone> = 1) // assurez-vous que la valeur d'admission n'est que 0 ou 1
Isthle = 1;
signe = (num == (num = math.abs (num)); // obtenir le symbole (positif / négatif)
//Math.floor: renvoie l'entier maximum qui est inférieur à l'égalité de ses paramètres numériques
num = math.floor (num * math.pow (10, centre) +0.50000000001);
Centre = Num% Math.Pow (10, centre);
num = math.floor (num / math.pow (10, centre)).
Ques = Center.ToString ();
Tandis que (Central.Length <cent) {// constituent le nombre aux chiffres spécifiés.
Centre = "0" + Centre;
}
if (isthle == 0) // pas besoin de milliers de quota.
Return ((signe)? '': '-') + num + '.'
// Formatez la partie entière pour des milliers de points.
pour (var i = 0; i <math.floor ((num.length- (1 + i)) / 3); i ++)
Num = num.substring (0, num.length- (4 * i + 3)) + '+
num.substring (num.length- (4 * i + 3));
Return ((signe)? '': '-') + num + '.'
}
};
Window.calc = calc;
} ());