Ce face Number.prototype.toPrecision
toFixed fixează numărul de zecimale, iar toPrecision fixează numărul total de cifre semnificative (de la prima cifră diferită de zero). Rezultatul este rotunjit și returnat ca text.
Dacă numărul are mai multe cifre în partea întreagă decât precizia cerută, rezultatul folosește notația exponențială (1.2e+4). Precizia poate fi între 1 și 100.
Parametri
| Parametru | Descriere |
|---|---|
cifreSemnificative |
Opțional. Câte cifre semnificative păstrează. Fără el, este ca toString(). |
Ce returnează
Un șir de caractere.
Exemple
Exemplul 1: Aceeași precizie, numere diferite
console.log((3.14159).toPrecision(3));
console.log((0.000123456).toPrecision(2));
console.log((1234.5).toPrecision(6));
console.log((12345).toPrecision(2));
Rezultat
3.14
0.00012
1234.50
1.2e+4
Exemplul 2: Rezultate de măsurători
const masuratori = [9.80665, 299792.458, 0.0001602];
for (const m of masuratori) console.log(Number(m.toPrecision(3)));
Rezultat
9.81
300000
0.00016
Greșeli frecvente
- Faci calcule cu rezultatul:
toPrecisionreturnează text. Transformă-l înapoi cuNumber().
Comenzi înrudite
toFixed: Formatează un număr cu un număr fix de zecimale. Returnează text.Number.prototype.toExponential: Scrie un număr în notație științifică (exponențială), de exemplu 1.5e+6.Number.prototype.toLocaleString: Formatează un număr după obiceiurile unei țări: separatori, monedă, procente, unități.