Get to know MDN better
Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La fonction parseFloat() permet de transformer une chaîne de caractères en un nombre flottant après avoir analysée celle-ci (parsing).
Une chaîne de caractères la valeur qu'on souhaite analyser et transformer en un nombre flottant.
Un nombre flottant obtenu à partir de l'analyse de la chaîne de caractères. Si le premier caractère ne permet pas d'obtenir un nombre, ce sera la valeur NaN qui sera renvoyée.
parseFloat est une fonction non associée à un objet, disponible au plus haut niveau de l'environnement JavaScript.
parseFloat analyse l'argument fourni sous la forme d'une chaîne de caractères et renvoie un nombre flottant correspondant. L'analyse de la chaîne s'arrête dès qu'un caractère qui n'est pas +,-, un chiffre, un point ou un exposant. Ce caractère, ainsi que les suivants, seront ignorés. Les blancs en début et en fin de chaîne sont autorisés.
Note : Si on souhaite avoir un outil de conversion plus strict, on pourra utiliser Number(valeur) qui utilise une analyse plus stricte et qui fournit NaN pour les valeurs qui contiennent des caractères invalides, quelle que soit leur position.
Si le premier caractère de la chaîne ne peut pas être converti en un nombre, parseFloat() renverra NaN.
Pour des raisons arithmétiques, la valeur NaN n'est jamais un nombre, quelle que soit la base considérée. On peut utiliser la méthode isNaN afin de déterminer si le résultat obtenu par parseFloat() est NaN. Si NaN est passé comme valeur lors d'opérations arithmétiques, ces opérations renverront également NaN comme résultat.
parseFloat() peut également analyser et renvoyer la valeur Infinity qui représente l'infini numérique. Ici, on pourra utiliser la fonction isFinite() afin de déterminer si le résultat obtenu est un nombre fini (c'est-à-dire qui n'est ni Infinity, ni -Infinity, ni NaN).
parseFloat() peut également analyser un objet si celui-ci implémente la méthode toString() ou valueOf(). La valeur renvoyée par parseFloat() le résultat de parseFloat() appliqué à la valeur renvoyée par toString() ou valueOf() .
parseFloat() convertit une valeur BigInt en une valeur Number et perd ainsi en précision car toutes les valeurs BigInt ne sont pas représentables en Number.
Les instructions suivantes renvoient toutes la valeur 3.14 :
Dans cet exemple, le résultat obtenu est NaN :
Si on souhaite éviter de convertir des chaînes qui contiennent des caractères non numériques, on pourra utiliser une expression rationnelle pour filtrer ces valeurs (et obtenir une fonction plus stricte que parseFloat()) :
Attention : ce code n'est qu'un exemple et renverra NaN pour des valeurs pourtant valides comme 1. ou .5.
| ECMAScript® 2027 Language Specification # sec-parsefloat-string |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 17 févr. 2025 par les contributeur·ice·s du MDN.
Votre modèle pour un internet meilleur.
Visitez la société mère à but non lucratif de Mozilla Corporation, la Fondation Mozilla.
Certaines parties de ce contenu sont protégées par le droit d'auteur ©1998—2026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.