Почему кажется, что моя страница переходит в бесконечный цикл при вызове функции dealHands()
? Что должно произойти, так это то, что он должен вызвать функцию fetchCard()
. Эта функция должна создать случайное число в диапазоне от 0 до 51, а затем выполнить поиск в массиве discardPile
, чтобы убедиться, что случайное число не существует в массиве discardPile
. Если это не так, функция fetchCard()
должна вернуть случайное число обратно в функцию dealHands()
, чтобы его можно было присвоить / добавить в массив allHands
.
//Variables
var discardPile = new Array();
var allHands = new Array();
//Prototypes
Array.prototype.exists = function(search) {
for(i=0;i<this.length;i++)
if (this[i] == search) return true;
return false;
}
//Functions (Only the ones the that are needed for this question)
function dealHands() {
var cardsOfHand = new Array()
for (x=0;x<=1;i++) {
for (y=0;y<=1;y++) {
cardsOfHand[y] = fetchCard();
discardCard(cardsOfHand[y]);
}
allHands[x] = cardsOfHand
}
}
function discardCard(card) {
var totalCards = discardPile.length;
if (totalCard != 0) { totalCards++ }
discardPile[totalCards] = card;
}
function fetchCard() {
var usedCard = true;
while(usedCard == true) {
var randomCard = Math.floor(Math.random()*51);
usedCard = discardPile.exists(randomCard);
}
return randomCard;
}