Javascript 将三维阵列输出为表格

Javascript 将三维阵列输出为表格,javascript,arrays,dom,Javascript,Arrays,Dom,我正在做一个21点游戏的任务,并有排行榜和卡阵列 我想像这样打印引导板。卡片(单个单元格)|总计 谢谢你的帮助 function makeTable(leaderBoard) { var table = document.createElement('table'); for (var i = 0; i < leaderBoard.length; i++) { var row = document.createElement('tr'); f

我正在做一个21点游戏的任务,并有排行榜和卡阵列

我想像这样打印引导板。卡片(单个单元格)|总计

谢谢你的帮助

function makeTable(leaderBoard) {
    var table = document.createElement('table');
    for (var i = 0; i < leaderBoard.length; i++) {
        var row = document.createElement('tr');
        for (var j = 0; j < leaderBoard[i].length; j++) {
            var cell = document.createElement('td');
            cell.textContent = leaderBoard[i][j];
            row.appendChild(cell);
        }
        table.appendChild(row);
    }
    document.getElementById('leaderBoard').innerHTML = table;
}
函数生成表(排行榜){
var table=document.createElement('table');
对于(变量i=0;i
函数生成表(排行榜){
var table=document.createElement('table');
var行=document.createElement('tr');
对于(变量i=0;i<排行榜[0]。长度;i++){
var cell=document.createElement('td');
cell.textContent=排行榜[0][i];
子行(单元格);
}
var cell=document.createElement('td');
cell.textContent=“总计:”+排行榜[1];
子行(单元格);
表2.追加子项(行);
document.getElementById(“排行榜”).appendChild(表);
}
var userCards=[“卡1”、“卡2”、“卡3”];
var-userTotal=10;
makeTable([userCards,userTotal]);

可能示例输入的格式不正确,但重复使用预定义的表和html表函数,如insertRow和insertCell(不一定更好,但它们可能比createElement和append更简单):


功能更新排行榜(排行榜){
var table=document.getElementById('leaderTable');
while(table.rows.length>0)table.deleteRow(0);//删除上一个值(如果有)
对于(var i=0;i

你已经做了什么???这是结果-[object HTMLTableElement]这是阵列排行榜=[[usercards][usertotal]]你能给出一个示例条目和你想要的输出吗?当玩家在这样的阵列中获胜时,收集卡片[“card1”,“card2”]。然后我创建一个名为info的变量,该变量包括cards数组和作为int的总数,如var info=[userCards,usersTotal]。然后我做排行榜。推送(信息),我希望表格在不同的单元格中输出所有这些信息
function makeTable(leaderBoard) {
    var table = document.createElement('table');
    var row = document.createElement('tr');
    for (var i = 0; i < leaderBoard[0].length; i++) {
        var cell = document.createElement('td');
        cell.textContent = leaderBoard[0][i];
        row.appendChild(cell);
    }
    var cell = document.createElement('td');
    cell.textContent = "Total: " + leaderBoard[1];
    row.appendChild(cell);
    table.appendChild(row);
    document.getElementById('leaderBoard').appendChild(table);
}

var userCards = ["Card 1", "Card 2", "Card 3"];
var userTotal = 10;
makeTable([userCards, userTotal]);
<div id="leaderBoard"><table id=leaderTable></table></div>

function updateleaderboard(leaderBoard) {    
    var table = document.getElementById('leaderTable');
    while(table.rows.length > 0) table.deleteRow(0); //remove prev values, if any    
    for (var i = 0; i < leaderBoard.length; i++) { //If the function is always used on a winner (no ties), the loop isn't really needed
        var row =table.insertRow();
        var arrCards = leaderBoard[i++];
        var total = row.insertCell();
        total.className = 'res';
        total.textContent = leaderBoard[i];
        arrCards.forEach(function(c,ind){
            row.insertCell(ind).textContent = c;
        });
    }
}

var cards = [['Q','4','5'],19];

updateleaderboard(cards);