Javascript calcul不';如果数字大于1000,则不工作

Javascript calcul不';如果数字大于1000,则不工作,javascript,arrays,division,parsefloat,Javascript,Arrays,Division,Parsefloat,我试图用javascript计算一个简单的除法,但如果我的数字小于1000 结果不好 这是我的代码: var cal = parseFloat(currentAmount.toString()) / parseFloat(currencyArray[i][j].toString()) 如果currencyArray[i][j]等于13703并且currentAmount=100我的结果是好的(72.98) 但是如果我把1000放进去,我的结果就不好了(0.7298…好吧,随便猜一猜 看起来您正

我试图用javascript计算一个简单的除法,但如果我的数字小于1000 结果不好

这是我的代码:

var cal = parseFloat(currentAmount.toString()) / parseFloat(currencyArray[i][j].toString())
如果
currencyArray[i][j]
等于
13703
并且
currentAmount=100
我的结果是好的
(72.98)

但是如果我把
1000
放进去,我的结果就不好了
(0.7298…
好吧,随便猜一猜

看起来您正在将数字处理为字符串,格式不正确,您有
“1000”
“1000”
,并且希望将其解析为
1000
。你的问题是

parseFloat("1 000")
给予

在这种情况下,请删除以下空间:

var currentAmountAsNumber = parseFloat(currentAmount.toString().replace(/[ ,]/g,''))

但是有一个测试用例可能会让我们简化这一点。

由于您得到的特定值,我想您的
currentAmount
不是您声称的
1000
,而是
1000
1000
甚至
1000
。当
parseFloat
抓住它时,它只看到
1
,因为
不是数字中的有效字符<代码>1/1.3703是
0.7298…


数字不能有千个分隔符,小数必须是点。(作为一个在法国长大的人,我知道这会让人困惑!)

为什么会有这样的人?您当前的金额是多少?请将问题复制到一个表格中。现在,你似乎正在处理格式化为字符串的数字,但这实际上是一个猜测游戏。请确保你的
currentAmount
没有用逗号或点表示,因为千位分隔符100/13703不是72.98,所以即使你的“好”结果实际上也不正确。为什么要调用
.toString()
var currentAmountAsNumber = parseFloat(currentAmount.toString().replace(/[ ,]/g,''))