以下のcalculateTotal関数を作成する手順を含むcodecademy.comのレッスンに取り組んでいます。[実行]をクリックすると、NaNが返されます。私が書いたように、calculateTotal関数の何が問題になっているのか、NaNを返すようになっていることは誰でも知っています。注意、NaNは数字ではないことを理解しています...
// runner times
var carlos = [9.6,10.6,11.2,10.3,11.5];
var liu = [10.6,11.2,9.4,12.3,10.1];
var timothy = [12.2,11.8,12.5,10.9,11.1];
// declare your function calculateTotal here
var calculateTotal = function(raceTimes){
var totalTime;
for(i = 0; i < raceTimes.length; i++){
totalTime += raceTimes[i];
return totalTime;
}
};
var liuTotal = calculateTotal(liu);
console.log(liuTotal);
この質問に答える人の多くは、vartotalTimeを「O」に設定する必要があると言っていることに注意してください。ただし、次のcodecademyレッスンでは、作成者はtotalTimeが何にも設定されていない関数を記述し、それが機能します。
var calculateAverage = function (raceTimes) {
var totalTime;
for ( i = 0; i < raceTimes.length; i++ ) {
totalTime = (totalTime || 0) + raceTimes[i];
}
// assign variable averageTime
var averageTime = totalTime / raceTimes.length;
return averageTime;
};