我应该创建一个calcExp函数(计算费用),但是我编写的代码不符合在线案例问题。
创建calcExp()函数。此功能的目的是从travelExp表中计算行和列的总计。将以下命令添加到函数中:
function calcExp() {
var expTable = document.querySelectorAll("table#travelExp tr");
for (var i = 0; i < expTable.length; i++) {
document.getElementById("subtotal"+i).value = formatNumber(calcClass(date[i]), 2);
}
document.getElementById("transTotal").value = formatNumber(calcClass("trans"), 2);
document.getElementById("lodgeTotal").value = formatNumber(calcClass("lodge"), 2);
document.getElementById("mealTotal").value = formatNumber(calcClass("meal"), 2);
document.getElementById("otherTotal").value = formatNumber(calcClass("other"), 2);
document.getElementById("expTotal").value = formatUSCurrency(calcClass("sum"));
}
calcClass为我成功。是:
function calcClass(sumClass) {
var sumFields = document.querySelectorAll("."+sumClass);
var sumTotal = 0;
for (var i = 0; i < sumFields.length; i++) {
var itemValue = parseFloat(sumFields[i].value);
if (!isNaN(itemValue)) {sumTotal += itemValue;}
}
return sumTotal;
}
如果您想知道,formatNumber和formatUSCurrency是该练习随附的函数。他们是:
function formatNumber(val, decimals) {
return val.toLocaleString(undefined, {minimumFractionDigits: decimals, maximumFractionDigits: decimals});
function formatUSCurrency(val) {
return val.toLocaleString('en-US', {style: "currency", currency: "USD"} );
我的错误消息:
calcExp()
1)calcExp()
设置正确的小计和总计值
2)calcExp()
设置正确的小计和总计值
0通过(228ms) 2次失败
1)calcExp()
calcExp()
设置正确的小计和总计值:
ReferenceError:日期未定义
在calcExp(dl_expenses.js:51:74)
在上下文。 (nt-test-7dd2e611.js:26:5)
2)calcExp()
calcExp()
设置正确的小计和总计值:
ReferenceError:日期未定义
在calcExp(dl_expenses.js:51:74)
在上下文。 (nt-test-7dd2e611.js:48:5)