【发布时间】:2014-08-05 13:39:25
【问题描述】:
这个功能是用来翻转我的记忆游戏中的牌,它负责找到对子。我试图通过在找到它们时删除它们来刷新板。假设我有 6 张卡片,并且找到了字母“A”。然后它应该从棋盘上移除对子“A”并随机化剩下的其他 4 张牌的位置。这是我函数中的 if 语句之一:
if(memoireValeur[0] == memoireValeur[1]){
tempoArray.push(memoireValeur);
carteFlip += 2;
sum+=score;
alert("Player 1: " +sum);
for(var i=0;i<memoireArray.length;i++){
for(var j=0;j<memoireArray.length;j++){
if(memoireArray[i]==tempoArray[j]){
memoryArray=memoireArray.splice(i,1);
}
}
}
document.write(memoryArray);
假设卡片是“A”、“A”、“B”、“B”、“C”、“C”。选择“A”对,然后这部分功能将从板/屏幕上删除“A”,并将其他 2 个字母留在板上。问题是 document.write(memoryArray) 应该显示“B”“B”“C”“C”,但事实并非如此。
【问题讨论】:
-
我认为你应该说
memoireArray.splice(i,1);memoryArray=memoireArray.splice(i,1);尝试让我知道。 -
还没有读完全文,但是你错过了一个括号
},除非你忘了复制它。它是应该关闭第一个的括号。 -
Mritunjay 当我将其更改为 memoireArray.splice(i,1); 时并没有什么不同;
标签: javascript html if-statement for-loop