,隨機從H陣列中產生一個元素
var h = ["劉","李","你","他","紅","白","黑","黃","它"];
var o = [];
var s = h.length - 1;
start.onclick = function(){
if((intv==undefined)&&(s>0)){
intv = setInterval(function(){
q = Math.floor(Math.random()*s);
document.getElementById("num").innerHTML = h[q];
},300);
h.splice(q,1);
s=s-1;
}
}
,停止執行隨機函式,并將隨機產生的元素添加到另一陣列中
_stop.onclick = function(){
clearInterval(intv);
intv=null;
o.push(h[q])
}
到最后兩位元素時就不變動了?為什么?怎么解決啊?兄弟拜托大家了。
uj5u.com熱心網友回復:
兄弟,你確定你的這個問題是JavaSE方面的?
uj5u.com熱心網友回復:
因為你var s = h.length - 1;導致
q = Math.floor(Math.random() * s);中q的結果值在0到s-1之間,也就是h.length-1-1,你當然永遠得不到最后一個元素咯,另外你這是javascript的,不是javaSE的
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/111682.html
標籤:Java SE
上一篇:這是什么原因?字面值的問題嗎?
