我要建立的东西:
大家好!我正在尝试制作一个记忆游戏,在您将卡片翻过来时,您要匹配卡片。
问题:
第一步似乎是将这些无序列表项放入某种数据结构中并随机化。如何在普通JS中做到这一点?
尝试
我试图创建一个数组来存储数据,但似乎无法将其记录到控制台。我也不确定数组是否是执行此操作的最佳方法。欢迎任何建议:)
const cardDeck = document.querySelectorAll('card');
Array.from(cardDeck).forEach(function(card){
console.log(card);
});
<ul class="deckOfCards">
<li class="card">
<i class="genericCard"></i>
</li>
<li class="card">
<i class="genericCard"></i>
</li>
<li class="card">
<i class="genericCard"></i>
</li>
<li class="card">
<i class="genericCard"></i>
</li>
<li class="card">
<i class="genericCard"></i>
</li>
<li class="card">
<i class="genericCard"></i>
</li>
</ul>
const cardDeck = document.querySelectorAll('.card');
Array.from(cardDeck).forEach(function(card){
console.log(card);
});
// Shuffle function from http://stackoverflow.com/a/2450976
function shuffle(array) {
var currentIndex = array.length, temporaryValue, randomIndex;
while (currentIndex !== 0) {
randomIndex = Math.floor(Math.random() * currentIndex);
currentIndex -= 1;
temporaryValue = array[currentIndex];
array[currentIndex] = array[randomIndex];
array[randomIndex] = temporaryValue;
}
return array;
}
shuffle(cardDeck);