Soyez le premier à donner votre avis sur cette source.
Snippet vu 10 227 fois - Téléchargée 36 fois
function limitDecimal(num:Number, limit:Number):Number { var pointIndex:Number = num.toString().indexOf(".", 0); if (pointIndex == -1) { return num; } else { var number:String = num.toString().substring(0, pointIndex); var decimals:String = num.toString().substring(pointIndex+1, num.toString().length); var newDecimals:String = decimals.substr(0, limit); return Number(number+"."+newDecimals); } } et puisque top30 insiste, voici une solution plus simple et plus courte (mais lui au moins il dors la nuit!): function FloatLength ( val :Number, length :Number) :Number { var tmp:Array = String(val).split ('.') ; if ( tmp[1] ) tmp[1] = tmp[1].substring (0, length) ;trace (length); return Number (tmp.join('.')) ; } } alors on dit merci top30! bonne nuit BlackWizzard!
15 sept. 2009 à 19:15
Merci à vous ^^
13 sept. 2004 à 10:58
On peut même limiter le calcul comme suit...
function getLimitFloatLength ( val :Number, length :Number ) :Number {
var pow :Number = Math.pow ( 10, length) ;
return Math.round ( val * pow ) / pow ;
}
Je crois que grâce `WhiteMagus.. Ta fonction est devenu parfaite...
Je prends !
12 sept. 2004 à 01:14
12 sept. 2004 à 01:12
Mais il y a un moyen simple d'arrondir un nombre à quelques chiffres après la virgule.
Grâce à Math.pow :
// on arrondi n à d chiffre après la virgule
arrondi = function(n, d) {
return Math.round( n * Math.pow(10, d)) / Math.pow(10, d);
};
trace ("arrondi de 6.55957 à 2 chiffres après la virgule : " + arrondi(6.55957, 2));
Je ne sais pas ce que vous voulez faire mais je trouve que c'est une méthode qui serait sympa de connaître.
@+
10 sept. 2004 à 16:15
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.