Javascript 运算符使用小数时出现问题

标签 javascript html math

我几乎得到了我想要的一切。我唯一的问题是,由于某种原因,我无法正确添加 bctf1 。假设如果 bctf = 10,则该代码的结果将为 100.59 而不是 10.59。假设如果 bctf = 25,则该代码的结果将为 $251.03 而不是 26.03

// BUY TOTAL
<script type="text/javascript">
function buytot(){
var bctf = document.getElementById('buyctf').value;
if(bctf.charAt(0) == "0" || bctf.charAt(0) == "" || bctf.charAt(0) == " "){
bctf2 = "0.00";
} else {
pcbctf = bctf*.029;
pcplusc = pcbctf+.30;
bctf1 = bctf+pcplusc;
bctf2 = Math.round(bctf1*100)/100;
}
document.getElementById('buyctotal').innerHTML = bctf2;
}
</script>

这是带有 JS 的 HTML -> http://jsfiddle.net/hhWDe/5/

最佳答案

强制指定数据类型:

var bctf = parseFloat(document.getElementById('buyctf').value);

关于Javascript 运算符使用小数时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8348759/

相关文章:

javascript - 如何设置纬度和经度以使用 Google Chrome 调试 Geolocation API?

javascript - Chrome 扩展 : get current site name

javascript - import 语句中的解构赋值

ios - 需要用我的临时配置文件重新签署 IPA 文件

javascript - 从链接调用js方法

需要 X 时间的 Java 计算

c++ - 需要一种方法让这段代码运行得更快

javascript - 从 subview 访问父 View 中的属性

javascript - float 在其他响应式 div 上的 div

javascript - 求虚点的距离