我有一组值,我想从中取随机值。这是我的代码:
var bonus1='Opony zimowe';
var bonus2='Alarm';
var bonus3 = 'Bagażnik';
var bonus4 = 'Relingi';
var bonus5 = 'Box na narty';
var bonusy = [bonus1, bonus2, bonus3, bonus4, bonus5];
var pickBonus= bonusy[Math.floor(Math.random() * bonusy.length)];
但是它不显示随机值(它总是console.log-'Alarm'):
怎么了?
最佳答案
从屏幕快照看来,您基本上是在尝试多次打印相同的值,而期望使用不同的值。
它不起作用,您每次都需要从数组中再次获取随机值。使其功能化
var pickBonus= () => bonusy[Math.floor(Math.random() * bonusy.length)];
现在将其调用为
console.log( pickBonus() );
console.log( pickBonus() );
console.log( pickBonus() );
console.log( pickBonus() );
演示版
var bonus1='Opony zimowe';
var bonus2='Alarm';
var bonus3 = 'Bagażnik';
var bonus4 = 'Relingi';
var bonus5 = 'Box na narty';
var bonusy = [bonus1, bonus2, bonus3, bonus4, bonus5];
var pickBonus= () => bonusy[Math.floor(Math.random() * bonusy.length)];
console.log( pickBonus() );
console.log( pickBonus() );
console.log( pickBonus() );
console.log( pickBonus() );