今天看到一份面試題,記錄一下
1、題目:
在下列JSON 找出所有甲班
的學生, 並加上 "及格"
的屬性, Value
爲分數大於等於60爲Pass
, 否則爲 Fail
, 並刪除分數資料, 最後將符合的資料輸出至console
[
{“班級”:“甲班”,“姓名”:“小明”,“分數”:60},
{“班級”:“乙班”,“姓名”:“小王”,“分數”:59},
{“班級”:“甲班”,“姓名”:“小陳”,“分數”:70},
{“班級”:“甲班”,“姓名”:“小可”,“分數”:90},
{“班級”:“乙班”,“姓名”:“小黃”,“分數”:40},
{“班級”:“丙班”,“姓名”:“小林”,“分數”:99},
{“班級”:“甲班”,“姓名”:“小雨”,“分數”:20},
{“班級”:“乙班”,“姓名”:“小丁”,“分數”:59},
{“班級”:“甲班”,“姓名”:“小許”,“分數”:55},
{“班級”:“乙班”,“姓名”:“小葉”,“分數”:60}
];
2、代碼如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Language" content="zh-cn"/>
<title></title>
</head>
<body>
<button id="btn" onclick="btn();">確定</button>
<script>
function btn() {
var json_Obj = [
{"班級": "甲班", "姓名": "小明", "分數": 60},
{"班級": "乙班", "姓名": "小王", "分數": 59},
{"班級": "甲班", "姓名": "小陳", "分數": 70},
{"班級": "甲班", "姓名": "小可", "分數": 90},
{"班級": "乙班", "姓名": "小黃", "分數": 40},
{"班級": "丙班", "姓名": "小林", "分數": 99},
{"班級": "甲班", "姓名": "小雨", "分數": 20},
{"班級": "乙班", "姓名": "小丁", "分數": 59},
{"班級": "甲班", "姓名": "小許", "分數": 55},
{"班級": "乙班", "姓名": "小葉", "分數": 60}
];
for (var i = 0; i < json_Obj.length; i++) {//循環 json 對象
//console.log(arr_Obj[i]);
for (var key in json_Obj[i]) {//循環 json 對象中的 key、value
if (json_Obj[i][key] == "甲班"){
//console.log(arr_Obj[i]);
if (json_Obj[i].分數 >= 60){//如果這個 json 對象中的 分數 >= 60
json_Obj[i].及格 = "Pass";//添加 屬性與屬性值
}else {
json_Obj[i].及格 = "Fail";
}
//console.log(arr_Obj[i]);
delete json_Obj[i].分數;//刪除 分數 的屬性與屬性值
console.log(json_Obj[i]);
}
}
}
}
</script>
</body>
</html>