我可以使用Javascript获得关于json解析的一些建议:
上例中的json格式是一个嵌套的json,尝试使用Child的值验证父键的密钥...
说我们有100名学生,每个学生的数据如下:
{
"studentName": "good student",
"age": "18",
"address": "street 123",
"courses": {
"math": {
"description": "how to calculate",
"enrollment": "enrolled",
"status": {"result": "OK"}
},
"English": {
"description": "abc",
"enrollment": "not-enrolled",
"status": {"result": "OK"}
}
}
}
验证的目的是确保每个学生的比赛课程都“注册” ,因为它是必需的类。英语课程可以“注册”或“未注册”,因为英语课程是可选的。
提前致谢。
答案 0 :(得分:0)
提供学生对象,您只需要在学生的课程对象中检查课程是否存在已注册状态。
var student = {
"studentName": "good student",
"age": "18",
"address": "street 123",
"courses": {
"Math": {
"description": "how to calculate",
"enrollment": "enrolled",
"status": {"result": "OK"}
},
"English": {
"description": "abc",
"enrollment": "not-enrolled",
"status": {"result": "OK"}
}
}
};
function isStudentEnrolledInCourse(student, course) {
var courses = student.courses;
var courseObj = courses[course];
if (typeof courseObj === 'undefined' ||courseObj.enrollment !== 'enrolled') {
return false;
}
return true;
}
console.log(isStudentEnrolledInCourse(student, 'Math'));

给出100个学生的列表,您可以简单地遍历列表并在每个对象上调用isStudentEnrolledInCourse
函数。另外,如果你有一个JSON字符串而不是一个javascript对象,请不要忘记用JSON.parse(jsonString)
解析它。