Javascript - 带小数的Sum表列

时间:2017-06-14 11:06:00

标签: javascript jquery html

我有一个计算表中所有列值的脚本,但现在脚本只获取完整数,而不是计算小数,所以如果我有:

column1 ------- column2

一些文字----- 10.2

其他文字------ 3.4

textt ------------- 20.9

我只得到33而不是34.5

我的代码:

var tds = document.getElementById('vinyle').getElementsByTagName('td');
var sum = 0;
for (var i = 0; i < tds.length; i ++) {
    if (tds[i].className == 'count-me') {
         sum += isNaN(tds[i].innerHTML) ? 0 : parseInt(tds[i].innerHTML);
    }
}

document.getElementById('vinyle').innerHTML += '<tr class="sum"><td>' + sum + '</td></tr>';

如何编辑它以开始用小数计算?

2 个答案:

答案 0 :(得分:2)

使用parseFloat()

var tds = document.getElementById('vinyle').getElementsByTagName('td');
                var sum = 0;
                for(var i = 0; i < tds.length; i ++) {
                    if(tds[i].className == 'count-me') {
                        sum += isNaN(tds[i].innerHTML) ? 0 : parseFloat(tds[i].innerHTML);
                    }
                }


                document.getElementById('vinyle').innerHTML += '<tr class="sum"><td>' + sum.toFixed(2) + '</td></tr>';

var tds= ['36.2','56.2'];

                var sum = 0;
                for(var i = 0; i < tds.length; i ++) {

                        sum += isNaN(tds[i]) ? 0 : parseFloat(tds[i]);
                    
                }


                document.getElementById('vinyle').innerHTML += '<tr class="sum"><td>' + sum.toFixed(2) + '</td></tr>';
<div id="vinyle"></div>

答案 1 :(得分:1)

使用parseFloat而不是parseInt。