Ce face Math.hypot
Math.hypot(a, b) calculează √(a² + b²), adică ipotenuza unui triunghi dreptunghic (teorema lui Pitagora). Acceptă oricâte numere, deci merge și în 3 dimensiuni.
Este mai sigur decât Math.sqrt(a*a + b*b) pentru numere foarte mari sau foarte mici, unde pătratele ar depăși limitele.
Parametri
| Parametru | Descriere |
|---|---|
a, b, ... |
Numerele (laturile, diferențele de coordonate). |
Ce returnează
Un număr pozitiv.
Exemple
Exemplul 1: Ipotenuza și distanța dintre două puncte
console.log(Math.hypot(3, 4));
const a = { x: 1, y: 2 };
const b = { x: 7, y: 10 };
console.log(Math.hypot(b.x - a.x, b.y - a.y));
Rezultat
5
10
Exemplul 2: Diagonala unui ecran de 16:9
const latime = 16 * 2.2;
const inaltime = 9 * 2.2;
console.log(`${Math.hypot(latime, inaltime).toFixed(1)} inci`);
Rezultat
40.4 inci
Greșeli frecvente
- Dai un tablou de numere:
Math.hypot([3, 4])dăNaN. FoloseșteMath.hypot(...tablou).
Comenzi înrudite
Math.pow / sqrt / cbrt: Ridică un număr la o putere și calculează rădăcina pătrată sau cubică.Math.sin / cos / tan / atan2: Funcțiile trigonometrice și inversele lor; unghiurile sunt în radiani.Math.abs: Returnează valoarea absolută a unui număr (numărul fără semnul minus).