我尝试遍历集合,如下所示

var debitAmountTcyTotal = 0;
var debitAmountPcyTotal = 0;
            _.each(JournalVoucherView.journalVoucherDebitCollection.models, function(data) {
                if (data) {
                    debitAmountTcyTotal = parseFloat(debitAmountTcyTotal) + parseFloat(data.get("amountTcy"));
                    debitAmountPcyTotal = parseFloat(debitAmountPcyTotal) + parseFloat(data.get("amountPcy"));
                }
            });

            $('#journalvoucher-debit-amountTcy-total').text(parseFloat(debitAmountTcyTotal));
            $('#journalvoucher-debit-amountPcy-total').text(parseFloat(debitAmountPcyTotal));

但是当集合没有值时,以下内容变为NaN
debitAmountTcyTotal
debitAmountPcyTotal

但是我已经使用zero初始化了以上变量,为什么当我将其设置为zero时它会变成NaN?

我真的不明白背后的原因。

我用backbone.js

最佳答案

您正在用覆盖零值

debitAmountTcyTotal = parseFloat(debitAmountTcyTotal) + parseFloat(data.get("amountTcy"));

大概parseFloat(data.get("amountTcy"))NaN0 + NaNNaN

关于javascript - 该值在javascript中变为NaN,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18506993/

10-11 13:35