我有两个数组,一个是普通数组,另一个是对象数组。我想在这里告诉我如何在两个人之间循环以达到“ Jhon ”的好和(期中+期末)之和。在a中:第一个是学校,第二个是班级>>我将使用.split(“ |”)将它们放入数组中b:对象数组
我不需要整个代码,只需要循环和if条件
该函数会将a中的1 | 1与school_no和class_no进行比较以进行匹配
但是我想根据条件将学生的名字涂上颜色,例如红色表示不好,蓝色表示很好。
这里的数组
a=["1|1|Jhon","1|2|Akram","1|3|Mali"]
//first no for school no
//second no for class no.
b= [{
"result": [
{
"midterm": 25,
"evaluation": "good",
"finalterm": 24
}
],
"school _no": 1,
"class_no": 1
},
{
"result": [
{
"midterm": 55,
"evaluation": "verygood",
"finalterm": 60
}
],
"school_no": 1,
"class_no": 2
},
{
"result": [
{
"midterm": 11,
"evaluation": "bad",
"finalterm": 12
}
],
"school_no": 1,
"class_no": 3
}
];
console.log(a);
console.log(b);
这不是家庭作业,但这只是我正在从事的工作的一个小例子。
您只需对a
(学生)的数据进行迭代,并在b
(结果)中找到学校编号和课程编号:
a=["1|1|Jhon","1|2|Akram","1|3|Mali"]
//first no for school no
//second no for class no.
b= [{
"result": [
{
"midterm": 25,
"evaluation": "good",
"finalterm": 24
}
],
"school_no": 1,
"class_no": 1
},
{
"result": [
{
"midterm": 55,
"evaluation": "verygood",
"finalterm": 60
}
],
"school_no": 1,
"class_no": 2
},
{
"result": [
{
"midterm": 11,
"evaluation": "bad",
"finalterm": 12
}
],
"school_no": 1,
"class_no": 3
}
];
var result=[]
a.forEach(function(element) {
var data= element.split("|");
var found = b.find(function(element) {
return element.school_no == data[0] && element.class_no== data[1];
});
result.push(data[2]+" is "+found.result[0].evaluation+" and sum of (midterm+finalterm) is :"+(found.result[0].midterm+found.result[0].finalterm));
document.getElementById(data[2]).className = found.result[0].evaluation;
});
console.log(result);
.good {
color: blue;
}
.bad {
color: red;
}
.verygood {
color: green;
}
<div id="Jhon">Jhon</div>
<div id="Akram">Akram</div>
<div id="Mali">Mali</div>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句