gpt4 book ai didi

javascript - 从数组中随机选取 3 个元素。而不是两次获得相同的元素

转载 作者:行者123 更新时间:2023-11-30 15:46:19 24 4
gpt4 key购买 nike

我试图让这个函数打印出三个随机名称,而不用两次使用相同的名称。我开始尝试在 for 循环中使用 If,但不知道这是否正确。感谢所有帮助,因为我在学习 Javascript 时感觉有点卡在这一点上。

var name = ["Kai", "Lars", "Anders", "Ole", "Petter", "Mikael", "Cos", "Sin"];  
var randName = [];

function randomNavn(){
document.getElementById("utskrift").innerHTML = "";
for( i = 0; i < 3; i++){
randName.push(name.splice(Math.floor(Math.random() * name.length), 1));

if(name[i] === randName[i]){

}
}
document.getElementById("utskrift").innerHTML = randName.join(" , ");
}

最佳答案

您可以使用do..while 循环。还要注意 .splice() 结束处的 [0] 返回数组的值而不是数组。

var names = ["Kai", "Lars", "Anders", "Ole"
, "Petter", "Mikael", "Cos", "Sin"];
var randName = [];
do {
randName[randName.length] = names.splice(
Math.floor(Math.random() * names.length)
, 1)[0];
} while (randName.length < 3);

console.log(randName);

关于javascript - 从数组中随机选取 3 个元素。而不是两次获得相同的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40018925/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com