天哪,我喜欢这个网站。这么多很棒的人!
到目前为止,我可以从数组中获取 1 个随机名称。但现在我每次都想要 3 个不同的名字,aaa,我被卡住了 -_^
有人想用他们的至高无上的威严来指出我知识的缺乏吗? :D 提前致谢<3
JS
<script>
window.onload = funkytown;
function funkytown() {
document.getElementById("btn").onclick = name;
}
function name() {
var students = ["Mike","Nick","Slagathor","Banana","Rick","Astley","Rock","JW","pronax"];
var randomize = students.splice(Math.floor(Math.random() * students.length), 1);
var html = "Random names: ";
document.getElementById("text").innerHTML = html + randomize;
}
</script>
HTML
<span id="text"></span>
<input type="button" id="btn" value="Randomize!" />
最佳答案
您可以使用现有的函数,从数组中随机提供一个名称,只需递归调用它,直到获得 3 个不同的名称。
var randomNames=[];
var count=0;
function name() {
if(count==3){
return;
}
var students = ["Hans","Ole","Nils","Olav","Per","Knut","Kari","Line","Pia"];
var randomize = students.splice(Math.floor(Math.random() * students.length), 1);
if(randomNames.indexOf(randomize) == -1){
randomNames.push(randomize );
++count;
}
name();
}
var html = "Tilfeldige navn: ";
document.getElementById("text").innerHTML = html + randomNames;
关于javascript - 从数组到元素创建 3 个随机名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32760713/