Когда я анализирую этот объект с помощью функции ниже, первое значение, которое я получаю в таблице, - это «неопределенное». Есть идеи, почему это может происходить? Я неправильно анализирую? Должен ли я использовать другой цикл?
var students = [
{
fn : "Stone",
ln : "Carpenter",
scores : [61,99,73,68,80,62,176,78]
},
{
fn : "Samson",
ln : "Sears",
scores : [68,193,91,190,95,65,171,75]
},
{
fn : "Quin",
ln : "Morton",
scores : [79,95,161,92,182,163,198,182]
},
{
fn : "Qunitessa",
ln : "Hardy",
scores : [99,65,75,69,77,67,86,78]
},
{
fn : "Ashley",
ln : "England",
scores : [147,70,81,64,148,71,70,63]
},
{
fn : "Thaddeus",
ln : "Hutchinson",
scores : [99,190,188,185,160,88,89,76]
},
{
fn : "Yeo",
ln : "Hayes",
scores : [88,64,199,165,198,76,74,81]
},
{
fn : "Rylee",
ln : "Larson",
scores : [71,126,63,71,168,173,175,88]
}
];
function updateTable(obj) {
var rows,
len;
len = obj.length;
rows = "<table>"
rows += "<tbody>"
for (var i in obj) {
var scoreLen,
score,
sum;
scoreLen = obj[i].scores.length;
scores = obj[i].scores;
rows += "<tr>"
rows += "<td>" + obj[i].fn + "</td>"
rows += "<td>" + obj[i].ln + "</td>"
for(j=0; j<scoreLen; j+=1) {
rows += "<td>" + scores[j] + "</td>"
}
rows += "<td>" + arraySum(obj[i].scores) + "</td>"
rows += "</tr>"
}
document.getElementsByTagName('body')[0].innerHTML = rows
console.log(rows)
}