2013-12-10 14 views
0

我有一個數字從數據庫返回並帶有關聯的格式字符串。爲了這個例子的目的,請考慮2列。jQuery(或Javascript)根據給定的C#/ VBA/Java格式字符串格式化數字的方式

Value  FormatString ----> DESIRED OUTPUT FROM JAVASCRIPT/JQUERY 
-----  ------------   ------------------------------------- 
100  #0.00    100.00  
100000  #0,.0K    100.0K 
.193  #0.0%    19.3% 

格式選項包括小數點,千位分隔符的#與否,幅度(K,M,B),百分比,貨幣等的格式字符串的工作在C#和VBA就好了(我相信Java的使用相同的格式字符串)。

我正在尋找一種JavaScript方式(使用任何適用的庫,jQuery首選)來提供原始值和格式字符串,並讓它返回格式化數字。

我們正在試圖重新寫一個應用程序,這是數據庫給了我們......不能更改數據庫(和不知道我會想要麼因爲數據庫應該不會在意格式化數字顯示)。

最糟糕的情況:我們必須將所有格式字符串更改爲JavaScript喜歡的東西...但即使如此,我還沒有找到一個可用的解決方案,接受格式字符串。

編輯

我看了下面的庫/插件/工具。

  1. Numeral.js
  2. DecimalFormat.js
  3. jquery-numberformatter

所有擁有 「正確」 的不同級別的(因爲它適用於C#/ VBA格式字符串)。我可以用上面的1作爲出發點,一起攻擊一些東西,但是想看看是否有東西已經存在。

Numeral.js感覺就像是最有前途的,但它不處理大小我需要的方式(它要自動確定幅度爲您根據傳入的值)。如果這是最終的解決方案,這感覺就像是「最簡單」的改變。

回答

0

然後在上面睡覺並嘗試谷歌早晨,我相信我已經找到了我需要的東西。

flexible-js

這似乎是工作,我期望的那樣。不知道它是否完美地處理每個用例,但是基於初始測試,它看起來像我需要的那樣工作。