--- title: Number.prototype.toFixed() slug: Web/JavaScript/Reference/Global_Objects/Number/toFixed tags: - JavaScript - Méthode - Number - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Number/toFixed original_slug: Web/JavaScript/Reference/Objets_globaux/Number/toFixed ---
La méthode toFixed() permet de formater un nombre en notation à point-fixe.
Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner https://github.com/mdn/interactive-examples et à envoyer une pull request !
numObj.toFixed([nbChiffres])
nbChiffres {{optional_inline}}Une chaîne de caractères qui représente le nombre indiqué avec une notation à point fixe.
nbChiffres est trop grand ou trop petit. Les valeurs comprises, au sens large, entre 0 et 100, n'entraîneront pas de RangeError. Les différentes implémentations peuvent ou non supporter des valeurs plus petites et/ou plus grandes.toFixed() renvoie une chaîne de caractères représentant objetNumber sans notation exponentielle et qui possède exactement nbChiffres pour la partie fractionnaire. Le nombre est arrondi si nécessaire et la partie fractionnaire est complétée par des zéros si nécessaire pour obtenir la longueur souhaitée. Si le objetNumber est supérieur ou égal à 1e+21, la méthode utilise simplement {{jsxref("Number.prototype.toString()")}} et renvoie une chaîne en notation exponentielle.
Attention ! En raison du standard IEEE 754 qui est utilisé par JavaScript pour représenter les nombres, tous les nombres décimaux ne sont pas représentés exactement en JavaScript, ce qui peut mener à des résultats inattendus (comme 0.1 + 0.2 === 0.3 qui renvoie false).
var numObj = 12345.6789;
numObj.toFixed(); // Renvoie '12346' : arrondi, aucune partie fractionnaire
numObj.toFixed(1); // Renvoie '12345.7' : arrondi ici aussi
numObj.toFixed(6); // Renvoie '12345.678900' : des zéros sont ajoutés
(1.23e+20).toFixed(2); // Renvoie '123000000000000000000.00'
(1.23e-10).toFixed(2); // Renvoie '0.00'
2.34.toFixed(1); // Renvoie '2.3'
-2.34.toFixed(1); // Renvoie -2.3 (en raison de la précédence des opérateurs,
// les littéraux de nombres négatifs ne renvoient pas de chaînes)
2.35.toFixed(1); // Renvoie '2.4' (arrondi supérieur)
2.55.toFixed(1); // Renvoie '2.5' (cf. l'avertissement ci-avant)
(-2.34).toFixed(1); // Renvoie '-2.3'
| Spécification | État | Commentaires |
|---|---|---|
| {{SpecName('ES3')}} | {{Spec2('ES3')}} | Définition initiale. Implémentée avec JavaScript 1.5. |
| {{SpecName('ES5.1', '#sec-15.7.4.5', 'Number.prototype.toFixed')}} | {{Spec2('ES5.1')}} | |
| {{SpecName('ES6', '#sec-number.prototype.tofixed', 'Number.prototype.toFixed')}} | {{Spec2('ES6')}} | |
| {{SpecName('ESDraft', '#sec-number.prototype.tofixed', 'Number.prototype.toFixed')}} | {{Spec2('ESDraft')}} |
Le tableau de compatibilité de cette page a été généré à partir de données structurées. Si vous souhaitez contribuer à ces données, n'hésitez pas à envoyer une pull request sur https://github.com/mdn/browser-compat-data.
{{Compat("javascript.builtins.Number.toFixed")}}