0

首先感谢您抽出宝贵的时间。我正在研究用于啤酒制作的 IBU 计算器。请看下面的评论。parseB 是转换为数字的文本输入,我见过 typeof ibuFinal 是一个数字,而 inBU[i] 也是一个数字。为什么要回南?

var AAU=[]; 
var og=1.050;   
for(var i=0;i<6;i++){
    util[i]=(1.65*Math.pow(0.000125, og-1))*(1-Math.exp(-0.04*parseB[i]))/4.15;;                   
}

            function aau(){
                for(var i=0;i<6;i++){
                    AAU[i]=weight[i]*alpha[i];

                }
                return AAU;
            }

            function ibu(){

                var alphaAcid=aau();
                var inBU=[];
                var ibuFinal;

                for(var i=0;i,alphaAcid.length;i++){

                    inBU[i]=alphaAcid[i]*util[i]*75/batchSize;

                    ibuFinal+=inBU[i];//returns NaN for some reason!!
                }

                alert(ibuFinal);
            }
            ibu();
4

1 回答 1

1

你从不定义ibuFinal,所以它是undefined

JavaScript 添加中的类型强制计算出undefined + 1(或任何数字)是NaN. (在 EMCAScript 术语中,ToNumber(undefined)isNaNNaNplus any is NaN。)

确保初始化ibuFinal为零:var ibuFinal = 0;

于 2013-07-02T16:34:32.880 回答