Ce face Math.log / log10 / log2 / exp
Math.log este logaritmul natural (în baza e ≈ 2,718), Math.log10 este logaritmul zecimal, iar Math.log2 logaritmul în baza 2. Pentru 0 returnează -Infinity, iar pentru numere negative NaN.
Math.exp(x) calculează ex, operația inversă logaritmului natural. Variantele Math.log1p(x) (= log(1 + x)) și Math.expm1(x) (= ex − 1) dau rezultate mai precise pentru valori foarte apropiate de zero.
Pentru un logaritm în altă bază, împarte: Math.log(x) / Math.log(baza).
Parametri
| Parametru | Descriere |
|---|---|
x |
Un număr. |
Ce returnează
Un număr.
Exemple
Exemplul 1: Logaritmi și exponențiala
console.log(Math.log(Math.E));
console.log(Math.log10(1000), Math.log2(1024));
console.log(Math.exp(1), Math.exp(0));
console.log(Math.log(0), Math.log(-1));
console.log(Math.log(81) / Math.log(3));
Rezultat
1
3 10
2.718281828459045 1
-Infinity NaN
4.000000000000001
Exemplul 2: Câte cifre are un număr și câți biți trebuie
const n = 2026;
console.log(Math.floor(Math.log10(n)) + 1);
console.log(Math.ceil(Math.log2(300)));
Rezultat
4
9
Exemplul 3: Precizie lângă zero cu log1p și expm1
const x = 1e-17;
console.log(Math.log(1 + x), Math.log1p(x));
console.log(Math.exp(x) - 1, Math.expm1(x));
Rezultat
0 1e-17
0 1e-17
Greșeli frecvente
- Folosești
Math.logcrezând că este logaritmul zecimal. În JavaScript,Math.logeste cel natural; pentru baza 10 foloseșteMath.log10. - Calculezi
Math.log(81) / Math.log(3)și te aștepți la exact 4. Rezultatul poate avea erori mici de rotunjire; rotunjește-l dacă ai nevoie de un întreg.
Comenzi înrudite
Math.pow / sqrt / cbrt: Ridică un număr la o putere și calculează rădăcina pătrată sau cubică.Math.round / floor / ceil: Rotunjește un număr: la cel mai apropiat întreg, în jos sau în sus.Math.sinh / cosh / tanh: Funcțiile hiperbolice (sinus, cosinus, tangentă hiperbolică) și inversele lor.