我是JavaScript新手,正在使用基础知识。我想要创建一个数组,其中单个元素是随机绘制的,每次点击一个按钮,直到所有数组元素都显示在屏幕上。我拥有的代码几乎就在那里。但问题是,它运行时,它总是在第一次按钮点击时捕获2个元素,而不是1.它对于其余元素运行良好。当然希望对这个问题有所了解。谢谢。单击一个按钮列出数组元素,点击一个按钮
var myArray=['1','2','3','4','5','6','7']
var text = "";
var i;
function RandomDraw() {
for(i = 0; i < myArray.length; i+=text) {
var ri = Math.floor(Math.random() * myArray.length);
var rs = myArray.splice(ri, 1);
document.getElementById("showSplice").innerHTML = text+=rs;
//document.getElementById("showArrayList").innerHTML = myArray;
}
}
为什么要使用一个for循环,当你只需要1%的点击?只需删除for循环并添加一个'if(myArray.length> 0)' – Niels
'i + = text'是没有意义的。 –
谢谢你的快速回应,Niels。这可能不是我正在寻找的最终答案。只需点击一下按钮,代码就会随机抓取并显示每个元素。但是通过点击按钮,显示的前一个元素将从屏幕上移除,并显示下一个元素。我试图让每个元素在点击按钮时保留在屏幕上(直到显示整个数组)。请多一点帮助。 – Don199