我在javascript中有一个简单的数学问题,无法解决。

var prodajna_avg = parseFloat(vpc - (vpc * (rab_avg / 100))).toFixed(2);
var nabavna = parseFloat(<?php echo "$nabavna_cijena"; ?>);
document.getElementById("brutto_avg").textContent = parseFloat(prodajna_avg - nabavna);


问题在第三行。我没有得到正确的金额,也不知道为什么。第一行的金额为5.624,17,第二行的金额为3.904,54。由于某些原因,第三行返回5.620,19,而应为1.719,63。

你能帮助我吗?我正在学习JavaScript,这就是为什么这对我来说是个问题。

谢谢。

最佳答案

确保$nabavna_cijena的格式正确。

var nabavna = parseFloat("3.904,54");  // --> nabavna == 3.904
var nabavna = parseFloat("3,904.54");  // --> nabavna == 3
var nabavna = parseFloat("3904.54");   // --> nabavna == 3904.54


函数parseFloat()要求小数点为.,并且不允许使用组分隔符。

09-19 08:28