本篇文章為大家帶來了關於javascript的相關知識,主要為大家介紹了JavaScript中使用toLocaleString數字格式化處理詳解,有需要的朋友可以藉鑑參考下,希望能夠有所幫助。
【相關推薦:javascript影片教學、web前端】
##toLocaleString #專案中給數字做格式化處理的問題太常見啦,特別是涉及到金融數字的部分,這次就是有個需求需要給各種不同格式,要是以前可能就傻傻的自己寫函數處理,可是這次無意間看到還有這麼好用的函數,那以前豈不是純純的大冤種了-_-Number.prototype.toLocaleString()參數: numObj.toLocaleString([locales [, options]])。第一個參數是一個可選參數,縮寫語言代碼(BCP 47 language tag,例如: cmn-Hans-CN)的字串或這些字串組成的數組,一些Unicode 擴展鍵也是被允許的,詳情請見MDN,有特殊地區格式就得傳當地的
locales。一般傳值
undefined,
zh或
en,就可以應付大多數情況了,預設不傳是
undefiend。
var a = 123456.6789 a.toLocaleString() // 123,456.679,默认保留3位小数如果不想被分給成千分位,則需要用到一個屬性
useGrouping: false
var a = 123456.6789 a.toLocaleString(undefined, {useGrouping: false}) // 123456.67892. 保留幾位小數這裡主要用到了兩個屬性: 保留最少小數
minimumFractionDigits和保留最多小數
maximumFractionDigits
var a = 123456.6789 a.toLocaleString(undefined, {minimumFractionDigits: 6}) //123,456.678900這裡把最少保留數設為6,那它就會保留6位小數
var a = 123456.6789 a.toLocaleString(undefined, {maximumFractionDigits: 2}) //123,456.68如果想保留兩位小數的話,把保留最多小數設為2就行。 3. 使用的整數數字的最小數目minimumIntegerDigits 範圍是1-21,預設1
var a = 123456.6789 a.toLocaleString(undefined, {minimumIntegerDigits: 8}) //00,123,456.679所使用的整數數字的最小數目,不足會補零4. 使用的有效數字的最小數目minimumSignificantDigits範圍是1-21,預設1
var a = 123456.6789 a.toLocaleString(undefined, {minimumIntegerDigits: 8}) //00,123,456.6795. 使用的有效數字的最大數目maximumSignificantDigits範圍是1-21,預設21
var a = 123456.6789 a.toLocaleString(undefined, {maximumSignificantDigits: 6}) //123,4574.5兩個保留有效位的屬性也很厲害,可以保留任意有效位,四捨五入,不足位的會補零。 6. 展示的樣式style屬性
style是不同樣式展示選項:預設為
decimal。選項:
decimal: 純數字
#percent: 百分比
: 單位格式,配合unit
,單位使用。單位取值
: 用於貨幣格式,注意這個屬性不能單獨使用,還得配對使用currency
屬性<pre class="brush:js;">var a = 123456.6789,
a.toLocaleString(undefined, {style: &#39;decimal&#39;}) //123,456.679
a.toLocaleString(undefined, {style: &#39;percent&#39;}) // 12,345,668%
a.toLocaleString(undefined, {style: &#39;currency&#39;, currency: &#39;EUR&#39;}) // €123,456.68
a.toLocaleString(undefined, {style: &#39;currency&#39;, currency: &#39;CNY&#39;}) // ¥123,456.68
a.toLocaleString(undefined, {style: &#39;unit&#39;, unit: &#39;acre&#39;}) // 123,456.679英亩</pre>
其中
和currencyDisplay
也可搭配使用,前者製定對應的貨幣,如 USD
、EUR
與 CNY
(不區分大小寫的),後者則是貨幣符號的展示樣式,預設currencyDisplay
:symbol
:<pre class="brush:js;">var a = 123456.6789,
a.toLocaleString(undefined, {style: &#39;currency&#39;, currency: &#39;CNY&#39;, currencyDisplay: &#39;symbol&#39;}) // ¥123,456.68
a.toLocaleString(undefined, {style: &#39;currency&#39;, currency: &#39;CNY&#39;, currencyDisplay: &#39;code&#39;}) // CNY 123,456.68
a.toLocaleString(undefined, {style: &#39;currency&#39;, currency: &#39;CNY&#39;, currencyDisplay: &#39;name&#39;}) // 123,456.68人民币</pre>
上面都是一些
對數字的常規格式,應對日常的格式處理應該夠用的。 當然它還有
,Array.prototype.toLocaleString
,有興趣可以自行了解。 【相關推薦:
、web前端】
以上是實例詳解JavaScript中使用toLocaleString數字格式化的詳細內容。更多資訊請關注PHP中文網其他相關文章!