Как получить определенное число из Map
Мой код:
const boxes = new Map([
[60, 'undefined'],
[61, 'C'],
[80, 'U'],
[90, 'R'],
[97, 'E'],
[99, 'L'],
]);
const chanche = (Math.random() * 100).toFixed(
0
);
return boxes.get(
Array.from(boxes.keys()).reduce((a, b) => {
return a < chanche < b ? a : b;
})
);
Нужно: Если
chanche < 60 - undefined
chanche < 80 - C
chanche < 90 - U
chanche < 97 - R
chanche < 99 - E
chanche < 100 - L
Возможно ли это реализовать без switch и else if?
Ответы (1 шт):
Автор решения: Qwertiy
→ Ссылка
Map не нужен.
function gen() {
return "CCCCCCCCCCCCCCCCCCCUUUUUUUUUURRRRRRREEL"[Math.random() * 100 - 60 | 0]
}
function test(n) {
var count = { undefined:0, C:0, U:0, R:0, E:0, L:0 }
for (q=0; q<n; ++q) {
var x = gen()
count[x] = ~~count[x] + 1
}
console.log(count)
}
test(1000000)