jQuery输出NaN

时间:2014-06-09 11:25:00

标签: jquery nan

出于某种原因,代码在网站上输出 NaN ,但它正在处理小提琴。

以下是代码:

$(document).ready(function() {

var arrTotals = [];
var totalAmount = 0;

$( ".cartprice" ).each(function( index ) {

    arrTotals[index] = $(this).text(); 
    console.log(arrTotals[index]);
    totalAmount+=parseFloat($(this).text());
});

console.log('Total Amount: ' + totalAmount)   
var newTotalAmount = totalAmount.toFixed(2);   

$('#thetotal').text(newTotalAmount);

});

这是小提琴 http://jsfiddle.net/4Be6N/11/

遗憾的是,该页面位于CMS的后端,因此我无法向您显示该链接。控制台中没有错误。就是这样:

150.25 
25.36 
360.80 
1265.20 
26.50 
35.00 
1820.20     
£0.00 
Total Amount: NaN 

有人有任何想法吗?

2 个答案:

答案 0 :(得分:4)

您在parseFloat上拨打£0.00这不是一个号码,因此返回NaN,当您向任何内容添加NaN时,结果为{{1} }。

要么禁止使用NaN符号,要么使用正则表达式删除它们

£

答案 1 :(得分:1)

问题是其中一个文本不是数字:NaN =非数字

从您的控制台日志中可以很容易地看到问题:

isNaN( parseFloat("£0.00") ) == true