如何在表中显示关联数组

How to display associative array in a table?

本文关键字:显示 关联 数组      更新时间:2023-09-26

谁能帮我?我正在为一个"运气游戏"写一个脚本,

目标是
  1. 获取用户输入他们想要的任何数字,生成一个从 0 到他们输入的数字的随机数,并将其显示在结果数组中。

  2. 模拟"正面或反面"的游戏,并在相同的结果数组中显示该结果(我将使用关联数组)

  3. 运行上述两个目标总共 6 次。

  4. 在表格中显示结果。

  5. 将"
  6. 正面"的数量和"尾部"的总数相加并显示它们。

  7. 返回 6 个结果中的最小数字。

我已经完成了第 1、2 和 3 项。 我只需要第 6 项的帮助。如何在标题为"硬币侧"和"数字"的 2x7 表格上显示我的结果,以及如何汇总 6 次试验的所有"正面"和"反面",并返回生成的最小数字?

 <body>
 <div id = "luckGame"></div>
 var userInput = prompt("Enter maximum number output: ");
 printThis = document.getElementById('luckGame');
 function coinFlip() {
      return (Math.floor(Math.random() < 2) === 0) ? 'Heads' ; 'Tails';
 }
 for (var i = 0; i < 6; i++)
 {
      var result = [];
      result["randomNum"] = (Math.floor(Math.random()*userInput);
      result["coin"] = (coinFlip());
     printThis.innerHTML = result["coin"] + " " + result["randomNum"];
     //This loop will run 6 times.
     //This should print for example:  Heads  29 but I need to put all the results 
     //in a 2x7 table with labels "Coin Side" and "Number" included.  How do I do this?
 }
 //Code here needed to sum total of 'Heads' and 'Tails'
 //Code here needed to return the smallest number from the results.
 </body>

我的表格 CSS

 .results {
      border: 1px solid black;
      width: 200px;
      height: 20px;
   }

我的粗表

 var resultsTable = "<table class= 'results'><tr><td>" + "Coin Side" + "</td><td>" + "Number" + "</td></tr>";
     resultsTable += "<tr><td> + result["coin"] + "</td><td> + result["randomNum"] + </td></tr>";
     ... // repeat 4 more times.
     resultsTable += "<tr><td> + result["coin"] + "</td><td> + result["randomNum"] + </td></tr></table>;

如果我需要提供更多详细信息,请告诉我。

首先,创建一个包含标题的表

var table = document.createElement("table");
table.innerHTML = "<tr><th>Coin Side</th><th>Number</th></tr>";

然后在循环中,只需在末尾添加此代码即可向表中添加一行

var row = document.createElement("tr");
var coinCell = document.createElement("td");
var numCell = document.createElement("td");
coinCell.innerHTML = result["coin"];
numCell.innerHTML = result["randomNum"];
row.appendChild(coinCell);
row.appendChild(numCell);
table.appendChild(row);

最后,将表格添加到文档中

document.body.appendChild(table);

要计算正面和反面,请将此代码添加到现有循环中

(result["coin"] === "Heads") ? heads++ : tails++

只需创建两个全局变量并首先将它们设置为零

var heads = 0;
var tails = 0;

要获取最小值,首先创建一个设置为最大值的全局变量

var min = eval(userInput);

然后,在循环中,检查生成的数字是否小于当前min

if(result["randomNum"] < min)
  min = result["randomNum"];

演示:https://codecanister.com/Project/d547eed9/5/result/