随机图像停止游戏重复

时间:2018-08-21 19:39:28

标签: javascript random

我有一款想要尝试的游戏,其中显示一张随机纸牌,但会绘制重复的纸牌。我不想重复使用。我正在使用大约100张图片-我只放入了几张,以便你们理解。

我该如何做,使其不显示任何重复?

预先感谢您,我已经检查了其他地方,并附带数字似乎更容易。使用图片让我有些迷茫...

<script>
var cards = new Array();

cards.push("images/apple.jpg");
cards.push("images/pear.jpg");
cards.push("images/banana.jpg");
cards.push("images/grape.jpg");
cards.push("images/tree.jpg");
cards.push("images/dog.jpg");
cards.push("images/cat.jpg");
cards.push("images/house.jpg");

var lastPics = new Array();
var currentPic = cards[0];

function getRandomInt(min, max) {
  return Math.floor(Math.random() * (max - min + 1)) + min;
}
function pickimg2() {
  var image = cards[getRandomInt(0, cards.length - 1)];
  var innerHtml = ""
  document.randimg.src = image;
  document.getElementById("copy").src = image;

  lastPics.splice(0,0,image);
  if (lastPics.length > 5) {
    lastPics.pop();
  }
  lastPics.forEach(function(item){
    innerHtml = innerHtml 
        + "<img name='copy' style='width:200px;height:200px;display:inline-block;
        padding:10px 10px 0px 10px;box-shadow: 0 12px 8px -8px black;' src="+item+" />"
  });
  document.getElementById("lastPicsDiv").innerHTML = innerHtml;
}
</script>

1 个答案:

答案 0 :(得分:0)

所以您要做的就是随机挑选一张卡片。由于它们是随机的,因此您最终可能会重复。

相反,您想在每张卡中都放入一个阵列,然后将其随机排列以随机排列。

您可以通过按Random - 0.5进行排序来对数组进行排序。