2016-08-20 52 views
0

我已經在HTML中定義了一個代表數字的輸入。我需要將JavaScript中的字符串解析爲一個數字,以考慮用戶輸入的不同語言,例如:英語中的「1.34」將用法語寫爲「1,34」。 parseFloat('1,344')將返回1,以防我們符合英文標準。如何從JavaScript中的輸入中獲取數字?

+0

您需要使用執行格式設置的庫。一個這樣的庫是[全球化](https://github.com/jquery/globalize),但也有其他的。 – vlaz

+1

你到目前爲止嘗試過什麼? –

+0

[你不是唯一想這樣做的人](http://stackoverflow.com/questions/25645163/to-convert-string-to-number-according-to-locale-opposite-of-tolocalestring) –

回答

1

你也許可以找到它的庫,但你也可以很容易地將數字格式化成想要的格式。

當你從輸入數字只是把它轉換成字符串,然後使用的indexOf()函數http://www.w3schools.com/jsref/jsref_indexof.asp),看看是否有一個逗號的數量。它返回該元素在一個字符串中的位置索引,所以你可以用想要的那個來替換它的格式。如果沒有點/逗號,位置將爲-1

var num = 32.14; 
var string = String(num); 
var position = string.indexOf("."); 

希望這可以幫助你。

0

如果只有你認爲這兩個表述,然後又簡單的辦法是經常做

var floatNum = num.replace(/,/g,"."); 

,然後只把它像任何浮點數。

除非你真的需要它爲其他數字系統,我會避免使用庫。在我看來,圖書館對大多數項目來說過於龐大,無法正確使用。

相關問題