發現迴圈應用不少,結合之前的陣列、物件與判斷的部分,進行相關練習
var school = [
{
number: 1,
studentName: "小明",
testTimes: 3,
chineseGrade: [40,30,50],
englishGrade: [50,30,40],
mathGrade: [40,30,50],
classRoom: "一年一班"
},
{
number: 2,
studentName: "小花",
testTimes: 3,
chineseGrade: [60,70,80],
englishGrade: [80,80,90],
mathGrade: [50,40,30],
classRoom: "一年一班"
},
{
number: 3,
studentName: "小華",
testTimes: 3,
chineseGrade: [60,80,70],
englishGrade: [40,50,30],
mathGrade: [50,60,70],
classRoom: "一年一班"
},
]
console.log("學生姓名:" + school[0].studentName);
// 學生姓名:小明
// 挑出第1個陣列裡面的學生姓名
console.log(school[1].studentName + "的號碼是" + school[1].number +"號");
// 小花的號碼是2號
// 挑出第2個陣列裡面的學生姓名與號碼
console.log("國文已經考了" + school[2].testTimes + "次");
console.log("國文已經考了" + school[2].chineseGrade.length + "次");
// 國文已經考了3次
// 挑出第3個陣列裡面的國文測試次數
length
)來設定迴圈的次數,可減少變動後忘記修改[i]
var total = school.length
// 先設定次數(陣列長度)
for (var i = 0 ; i < total ; i++){
console.log("第" + (i+1) + "位學生是" + school[i].studentName);
}
// 依序列出全部的學生姓名
// 第1位學生是小明
// 第2位學生是小花
// 第3位學生是小華
for (var i = 0 ; i < total ; i++){
var mathTotal = 0;
// 設定總分變數
for (var a = 0 ; a < school[i].testTimes ; a++){
// 挑出第i個學生的測試次數
mathTotal += school[i].mathGrade[a];
// 將分數累加
}
var mathAVG = mathTotal/school[i].testTimes;
// 計算平均 = 總分/次數
console.log("數學平均:" + mathAVG);
if (mathAVG>= 60){
//判斷總分是否超過60,顯示及格
console.log("及格");
} else {
//否則,顯示不及格
console.log("不及格");
}
}
// 數學平均:40
// 不及格
// 數學平均:40
// 不及格
// 數學平均:60
// 及格
好像不進入 DOM 不行了?
知識庫存量嚴重不足,感覺有點頭大