@outplayedrq

Рандом по массиву у кого меньше параметр, как можно это сделать?

Добрый день, есть вот такой код. Он работает по принципу, чем больше int, тем больше шанс. Можно ли это как-то реализовать в обратную сторону?

let a = [{id: 1, int: 300}, {id: 333, int: 1000}, {id: 672, int: 5000}];
let sum = 0;

for (let i = 0; i < a.length; i++) {
  sum += a[i].int;
}

let rand = Math.floor(Math.random() * sum);
let i = 0;

for (let s = a[0].int; s <= rand; s += a[i].int) {
  i++;
}

console.log(a[i].id);
  • Вопрос задан
  • 83 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы