У меня есть это:
var users = [user1, user2, user3];
var chances = [20, 20, 60];
var total = 100;
var random = Math.floor((Math.random() * total) + 1);
if (random > 40 && random < 100) {
console.log('winner:', users[2]);
}
if (random > 20 && random < 40) {
console.log('winner:', users[1]);
}
if (random > 0 && random < 20) {
console.log('winner:', users[0]);
}
Это даст каждому пользователю справедливый шанс на победу.(60 имеет шанс 60%, 20 имеет шанс 20%).
Но мне действительно нужно, чтобы это была динамическая функция для каждой (или любой другой) функции.
Примермои мысли:
chances.forEach(function(entry) {
if (unknownValue > unkownValue2 && unknownValue3 < unknownValue4) {
console.log('winner:', unknownUser);
};
});
Таким образом, в основном, если значение для массива шансов 50, 100 и 20, вероятность того, что выигрыш 100 должен быть в 2 раза больше, чем 50, и в 5 раз выше, чем 20.
Я рад за каждый ответ и, пожалуйста, не отмечайте это как дубликат для процентов игровых автоматов, это НЕ то, что мне нужно.