Есть массив объектов, у которых некоторые свойства разные:
let a = {
name: "Alexander",
surname: "Pushkin",
fathername: "Sergeevich",
}
let b = {
name: "Taras",
surname: "Shevchenko",
sex: "male"
}
let c = {
name: "Nicolay",
surname: "Gogol",
age: 25,
}
let persons = [a, b, c]
Сделал такую таблицу:
Вот код:
let str2 = "<table border='1'>"
str2 += "<tr><th>Person</th><th>name</th><th>surname</th><th>age</th><th>fathername</th><th>sex</th></tr>"
for(let i = 0; i < persons.length; i++){
if(i % 2 == 1){
str2 += `<tr><td>${i}</td>
<td>${persons[i]["name"]}</td>
<td>${persons[i]["surname"]}</td>
<td>${persons[i]["age"]}</td>
<td>${persons[i]["fathername"]}</td>
<td>${persons[i]["sex"]}</td></tr>`
}
else{
str2 += `<tr style='background: cyan'><td>${i}</td>
<td>${persons[i]["name"]}</td>
<td>${persons[i]["surname"]}</td>
<td>${persons[i]["age"]}</td>
<td>${persons[i]["fathername"]}</td>
<td>${persons[i]["sex"]}</td></tr>`
}
}
str2
str2 += "</table>"
document.write(str2)
Как сделать, чтобы не нужно было вручную вводить шапку таблицы, а написать цикл, чтобы шапка и другие строки выводились сами?