通过比较2个JavaScript数组,通过2 for循环生成

时间:2017-12-29 09:35:10

标签: javascript

我希望我的数据表如截屏1中所示。但是在屏幕截图2中创建数据表的循环生成2。

screenshot 1

screenshot 2

我的代码:

for (a = 0; a < sem_course_code.length; a++) {
for (c = 0; c < applied_courses.length; c++) {
    if (sem_course_code[a] == applied_courses[c]) {
        td_content += "<td>" + applied_courses[c] + "</td>";
        continue;
    } else {
        td_content += "<td>--</td>";
    }

  }
}
alert(td_content);
$('#exam_marks_tbl tr:last').append(td_content);

请帮忙。

编辑: 对于1号学生阵列如下:

sem_course_code = [CRS02,CRS04,CRS03,CRS01];
applied_courses = [CRS02,CRS01];

1 个答案:

答案 0 :(得分:0)

这是我能想到的最快的事情,如果您想修改任何内容,请告诉我。

&#13;
&#13;
let sem_course_code = ['CRS02','CRS04','CRS03','CRS01'];
let applied_courses = ['CRS02','CRS01'];
let td_content = "<tr>";

let applied_courses_modified =new Array(sem_course_code.length).fill('--')
for(let i=0;i<applied_courses.length;i++){
  applied_courses_modified[sem_course_code.indexOf(applied_courses[i])] = applied_courses[i]
}
for(let j=0;j<applied_courses_modified.length;j++){
  td_content += "<td>" + applied_courses_modified[j] + "</td>";
}
td_content += "</tr>"
alert(applied_courses_modified)
alert(td_content)
document.getElementById('exam_marks_tbl').innerHTML = td_content
&#13;
<table border="1px" >
  <tbody id="exam_marks_tbl">
  
  </tbody>
</table>
&#13;
&#13;
&#13;