Javascript 在添加时,遍历包含美元金额的表列返回NaN
我想在一列中把美元的金额加起来。目前,我正在遍历这些行,当我输入console.log时,它会显示金额。当我尝试添加它们时,问题就出现了 以下是我当前的代码:Javascript 在添加时,遍历包含美元金额的表列返回NaN,javascript,jquery,Javascript,Jquery,我想在一列中把美元的金额加起来。目前,我正在遍历这些行,当我输入console.log时,它会显示金额。当我尝试添加它们时,问题就出现了 以下是我当前的代码: var total,curAmount; $('#carrier-details-table tbody tr > td:last-of-type').each(function() { if($(this).parent('tr').css('display')=='table-row'){
var total,curAmount;
$('#carrier-details-table tbody tr > td:last-of-type').each(function() {
if($(this).parent('tr').css('display')=='table-row'){
curAmount = parseFloat($(this).text().replace(',','').split('$')[1]);
total += curAmount;
console.log(curAmount);
}
});
同样,curAmount显示的数字是正确的,但是当I
console.log(total)
时,它显示的是NaN。我还尝试将$(this.text()
更改为$(this.html()
),但仍然没有更改。有人能给我指出正确的方向吗?也许您需要先将变量total
初始化为0
:
var total = 0, curAmount;
也许您需要首先将变量
total
初始化为0
:
var total = 0, curAmount;
总计最初初始化为
undefined
,因此undefined+1==NaN代码>
您可以更改它:var total=0,curAmount代码>总计首先初始化为未定义
,因此未定义+1==NaN代码>
您可以更改它:var total=0,curAmount代码>您可以发布最后一列如何呈现的HTML吗。如果计划对变量使用+=
,则应初始化变量,否则它将返回NaN。是否要在$(this).text()中删除逗号。替换(',','')
第5行?total
一开始是未定义的
,因此未定义+1==NaN
可以发布最后一列的HTML呈现方式。如果您计划在变量上使用+=
,则应初始化变量,否则它将返回NaN。您是否打算在$(this).text()中删除逗号。第5行的替换(',','')
?总计最初是未定义的
,因此未定义的+1==NaN
哇。。。你在开玩笑吧!成功了!也许有一些额外的积分?我如何使它只有两位小数?我试着确定(2),但结果并没有把结果加起来numbers@Damien将total=total.toFixed(2)
放在循环$之后。每个变量pi=3.141592653589793代码>Math.round(pi*100)/100代码>这不是你喜欢的东西,伙计。谢谢哇!你在开玩笑吧!成功了!也许有一些额外的积分?我如何使它只有两位小数?我试着确定(2),但结果并没有把结果加起来numbers@Damien将total=total.toFixed(2)
放在循环$之后。每个变量pi=3.141592653589793代码>Math.round(pi*100)/100代码>这不是你喜欢的东西,伙计。谢谢