当我在按钮上单击三次时,我试图找到一种删除字母(A,B,C)的方法,我尝试使用delete
,因为我不想使用{{ 1}},因为splice
会改变数组的顺序。我希望变量splice
,letterA
和letterB
保持在数组上的位置。我正在寻找的是:letterC
再次执行math.random,直到它得到与undefined不同的东西,可能会使用一段时间。
我试过,但似乎没有用。你对我的问题有什么解决方案吗?请不要使用jQuery,只需普通的JS。
if (randomletters == undefined)
var A = 0;
var B = 0;
var C = 0;
function incrementA() { A++; }
function incrementB() { B++; }
function incrementC() { C++; }
var letters = new Array()
letters[0] = 'letterA'
letters[1] = 'letterB'
letters[2] = 'letterC'
var randomletter;
function random() {
if (A == 3) { delete letters[0]; }
if (B == 3) { delete letters[1]; }
if (C == 3) { delete letters[2]; }
if ((A == 0 || A == 3) && (B == 0 || B == 3) && (C == 0 || C == 3)) {
randomletter = Math.floor(Math.random() * (letters.length));
if (randomletter == undefined) {
do {
randomletter = Math.floor(Math.random() * (letters.length));
} while(randomletter != undefined)
}
document.getElementById('text').innerHTML = letters[randomletter];
}
}
#green {
height: 20px;
width: 20px;
background: green;
}
#text {
height: 200px;
width: 200px;
background: yellow;
}