// ============================================================== // METHODE TOFIXED DE NUMBER // ============================================================== // Yoconono - yoconono@yoconono.com - toFixed() - 18/01/03 // avec l'aimable participation de mama - mama@yamago.net // et Gag - info@lolitadesign.net ;) // -------------------------------------------------------------- /* Renvoie un nombre sous forme de chaine de caractère avec le nombre de décimales précisée en paramètre de la méthode. Ajoute des zeros si nécessaire. Cette méthode est l'équivalent de la méthode du même nom en javascript à ceci près qu'elle renvoie undefined au lieu de soulever une erreur quand lui est transmis un paramètre négatif ou supérieur à 20 */ Number.prototype.toFixed = function(n) { if (n<0 || n>20) return; if (!(n=parseInt(n))) return Math.round(this)+""; var t1=Math.floor(this); if (t1==this) return t1+".00000000000000000000".substr(0,n+1); else { var dec; if (n<16) { dec=""+math.round((this-t1)*Math.pow(10,n)); if (dec.length-n>0) { dec=""; t1++; } return t1+".00000000000000000000".substr(0,n-dec.length+1)+dec; } else { dec=""+Math.round(this%t1*Math.pow(10,15))+"0000000000000000000000".substr(0,n-15); return t1+".00000000000000000000".substr(0,math.abs(n-dec.length)+1)+dec } } } // Vous pouvez masquer la méthode toFixed du prototype de Number // en utilisant la fonction ASSetPropFlags // La méthode deviens ainsi aussi transparente qu'une méthode prédéfinie. // Attention ASSetPropFlags est une fonction non documentée de Flash, // elle peut ne pas fonctionner avec les versions ulterieur de Flash. ASSetPropFlags(Number.prototype,"toFixed",1); // exemples d'utilisation: /* bob=10.2146); bob.toFixed(2) renvoie "10.21" bob.toFixed(5) renvoie "10.21460" bob.toFixed(0) renvoie "10" bob.toFixed() renvoie "10" bob.toFixed(-5) renvoie undefined */