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 Math.hypot() renvoie la racine carrée de la somme des carrés de ses arguments. On peut également la définir avec la formule suivante :
Math.hypot(v1,v2,…,vn)=∑i=1nvi2=v12+v22+…+vn2\mathtt{\operatorname{Math.hypot}(v1, v_2, \dots, v_n)} = \sqrt{\sum{i=1}^n v_i^2} = \sqrt{v_1^2 + v_2^2 + \dots + v_n^2}Des nombres.
La racine carrée de la somme des carrés des arguments. S'il existe un des arguments qui ne peut pas être converti en un nombre, c'est la valeur NaN qui sera renvoyée.
hypot() étant une méthode statique de Math, il faut utiliser Math.hypot() et non pas la méthode d'un autre objet qui aurait été créé (Math n'est pas un constructeur).
Si aucun argument n'est donné, le résultat sera +0.Si, parmi les arguments, au moins un ne peut pas être converti en un nombre, le résultat sera NaN.Si cette fonction est utilisée avec un argument : Math.hypot(x) sera équivalente à Math.abs(x).
Cette fonction permet entre autres de gérer certains cas où, pour les grands nombres, l'utilisation de Math.sqrt() aurait renvoyé Infinity à cause des calculs intermédiaires.
Si elle n'est pas disponible, cette fonction peut être émulée de la façon suivante :
Voici une seconde version qui évite les dépassements :
| ECMAScript® 2027 Language Specification # sec-math.hypot |
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.