1
當我將測試值(具體數字)輸入到我的薪酬計算腳本中時,它工作正常(例如10000)。但是當我用逗號輸入一個測試值(認爲是「10,000」或「$ 10,000」)時,腳本會將值讀到逗號所在的位置(認爲「10」而不是「10,000」)。我該如何解決這個問題。JavaScript:如何將包含用戶逗號的輸入轉換爲數字?
當我將測試值(具體數字)輸入到我的薪酬計算腳本中時,它工作正常(例如10000)。但是當我用逗號輸入一個測試值(認爲是「10,000」或「$ 10,000」)時,腳本會將值讀到逗號所在的位置(認爲「10」而不是「10,000」)。我該如何解決這個問題。JavaScript:如何將包含用戶逗號的輸入轉換爲數字?
var valueFromPrompt = window.prompt(...)
var valueNowANumber = +valueFromPrompt.replace(/[^\d\.]/g, '');
更換爲空白,則所有非數字(模式/[^\d\.]/g
),主導+
字符串轉換成數字。把空字符串(因爲有一個在原始字符串無編號)使得0
。
現在這不會涵蓋數字的所有邊緣情況,因此您可能需要調整模式。您可能想了解更多關於Regular Expressions
我會挑剔指出,這將轉換'$ 10.00'到'1000',這可能會有問題。 – fzzfzzfzz
對不起新手問題,但會將.replace(/ [^ \ d \。]/g,'')附加到保存該值的變量的結尾處? – CaZ
@CaZ喲。就像'var isNowANumber = + stringNumber.replace(...) – Joseph