Penso che sia meglio rispondere con un esempio.
Diciamo che avere i seguenti dati:
var products = [
{
"title": "Really Nice Pen",
"price": 150
},
{
"title": "Golf Shirt",
"price": 49.99
},
{
"title": "My Car",
"price": 1234.56
}
]
Si desidera visualizzare ciascuno di questi prodotti con il titolo e prezzo formattato. Proviamo ad usare toPrecision
prima:
document.write("The price of " + products[0].title + " is $" + products[0].price.toPrecision(5));
The price of Really Nice Pen is $150.00
sembra buono, per cui si potrebbe pensare che questo funzionerà per gli altri prodotti, nonché:
document.write("The price of " + products[1].title + " is $" + products[2].price.toPrecision(5));
document.write("The price of " + products[2].title + " is $" + products[2].price.toPrecision(5));
The price of Golf Shirt is $49.990
The price of My Car is $1234.6
non così buono. Possiamo risolvere questo problema modificando il numero di cifre significative per ciascun prodotto, ma se stiamo ripetendo la gamma di prodotti che potrebbero essere complicati.Usiamo toFixed
invece:
document.write("The price of " + products[0].title + " is $" + products[0].price.toFixed(2));
document.write("The price of " + products[1].title + " is $" + products[2].price.toFixed(2));
document.write("The price of " + products[2].title + " is $" + products[2].price.toFixed(2));
The price of Really Nice Pen is $150.00
The price of Golf Shirt is $49.99
The price of My Car is $1234.56
Questo produce quello che vi aspettavate. Non è previsto alcun lavoro di supposizione e non vi è alcun arrotondamento.
fonte
2014-03-20 15:46:33
Bah, ho postato questo nel mese di luglio 2010, e non ho imparato nulla su w3fools fino a quest'anno. Mentre gli sciocchi hanno ragione su alcune cose, non tutto sulle scuole è sbagliato. Grazie per aver segnalato che devo aggiornare questo post, però; lo farò tra un po '. – Pops
'toPrecision (x)' non "fornisce' x' lunghezza totale ", formatta su un numero di cifre significative date. Ad esempio, '0.0000022.toPrecisione (1)' restituisce '0.000002'. –
Ho appena visitato w3fools e non ero affatto convinto. Non vedo nemmeno discussioni. Tutto quello che vedo è una pubblicità per altri due siti. –