gpt4 book ai didi

javascript - 将百分比添加到随机生成的数字

转载 作者:行者123 更新时间:2023-11-30 11:25:21 25 4
gpt4 key购买 nike

我正在制作随机颜色生成器。我想通过在字段中设置百分比来增加获得某种颜色的百分比或机会。 (例如,用户将蓝色设置为有 50% 的几率生成)我可以这样做吗?如果有更简单/更有效的方法来编写此代码,请告诉我。我对编码很陌生,但想挑战自己。

我想知道如何设置,例如。 50% 到一种颜色,但不知道如何在数组中执行此操作,因为我的数组中只有 0-9 索引。请帮助:)

var colors = ["Red", "Yellow", "Blue", "Green", "Orange", "Purple", "Pink", "Black", "White", "Violet"];

$(document).ready(function(){
$('#spin-btn').click(function(){
var output = colors.length;
var randomNumber = Math.floor(Math.random()*output);

for(i=0;i<=output;i+=1){
var newColor = colors[randomNumber];
console.log(newColor);

if(newColor === "Red"){
$('#red').show();
} else {
$('#red').hide();
}
if(newColor === "Yellow"){
$('#yellow').show();
} else {
$('#yellow').hide();
}
if(newColor === "Blue"){
$('#blue').show();
} else {
$('#blue').hide();
}
if(newColor === "Green"){
$('#green').show();
} else {
$('#green').hide();
}
if(newColor === "Orange"){
$('#orange').show();
} else {
$('#orange').hide();
}
if(newColor === "Purple"){
$('#purple').show();
} else {
$('#purple').hide();
}
if(newColor === "Pink"){
$('#pink').show();
} else {
$('#pink').hide();
}
if(newColor === "Black"){
$('#black').show();
} else {
$('#black').hide();
}
if(newColor === "White"){
$('#white').show();
} else {
$('#white').hide();
}
if(newColor === "Violet"){
$('#violet').show();
} else {
$('#violet').hide();
}


break;
}

最佳答案

 var colors = [
"Blue","Blue", "Blue", "Blue", "Blue", "Blue", "Blue", "Blue" , "Blue"
"Red","Yellow", "Green", "Orange", "Purple", "Pink", "Black", "White", "Violet"
];

function generateColor() {
var colorsAmount = colors.length;
var randIndex = Math.floor(Math.random() * colorsAmount);
return colors[randIndex];
}

在颜色数组中重复该元素以增加其被选中的概率。

现在有 9 个元素的值为“blue”,其余所有元素重复一次。

所以有 18 个概率中有 9 个选择蓝色 (50%),所有其他颜色有 1 个概率中的 1 个 (5.55..%)

inspired by this answer

关于javascript - 将百分比添加到随机生成的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48261071/

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