Вы можете использовать этот формат таблицы, конечно.
Этот код даст вам ссылку на URL, указанный в объекте.
Дополнительная часть просто проверяет, является ли значение, помещаемое в ячейку, восьмым элементом объекта, и, если это так, устанавливает href тега <a>
в URL.Вы можете изменить это, если ваша структура данных изменится, и вы, очевидно, можете изменить текст ссылки.В конце я вызвал функцию, чтобы все пошло как надо.
function TableofStars()
{
var Stars= [
{
"Name": "Orion",
"Category": "Modern",
"Main-Stars": "7",
"Sub-Stars": "81",
"Symbol": "The Hunter",
"Area": "594",
"B-Star": "Rigel",
"URL": "http://set09103.napier.ac.uk:9111/constellations/Orion/"
},
{
"Name": "Ursa Major",
"Category": "Modern",
"Main-Stars": "20",
"Sub-Stars": "93",
"Symbol": "The Great Bear",
"Area": "1280",
"B-Star": "UMa",
"URL": "http://set09103.napier.ac.uk:9111/constellations/Ursa_Major/"
},
{
"Name": "Ursa Major",
"Category": "Modern",
"Main-Stars": "20",
"Sub-Stars": "93",
"Symbol": "The Great Bear",
"Area": "1280",
"B-Star": "UMa",
"URL": "http://set09103.napier.ac.uk:9111/constellations/Ursa_Major/"
}
]
var col = [];
for (var i=0; i < Stars.length; i++){
for (var key in Stars[i]){
if (col.indexOf(key) === -1)
{
col.push(key);
}
}
}
var table = document.createElement("table");
var tr = table.insertRow(-1);
for (var i = 0; i < col.length; i++)
{
var th = document.createElement("th");
th.innerHTML = col[i];
tr.appendChild(th);
}
for (var i = 0; i < Stars.length; i++)
{
tr = table.insertRow(-1);
for (var j = 0; j < col.length; j++)
{
if (j === 7) {
var tabCell = tr.insertCell(-1);
tabCell.innerHTML = `<a href="${Stars[i][col[j]]}">Link</a>`
} else {
var tabCell = tr.insertCell(-1);
tabCell.innerHTML = Stars[i][col[j]];
}
}
}
var divContainer = document.getElementById("showData");
divContainer.innerHTML = "";
divContainer.appendChild(table);
}
TableofStars();
<div id="showData"></div>