我试图弹出一个警报框,其中包含一组句子中的一个随机句子。这是我的代码:
var tasks = [
"This is the first task",
"And this is the second task",
"Third task..."
];
var randomTask = Math.floor((Math.random() * tasks.length) - 1);
alert(tasks[randomTask]);
如果你运行它,弹出窗口只会显示“未定义”。为什么不起作用?
感谢所有回答的人! :-)
最佳答案
Math.random
返回 0(含)和 1(不含)之间的随机数,将其乘以 3 并减去 1,这样就可以得到 -1 到 2 之间的数字(其中2 是唯一的 - 值将始终低于 2)。当你floor
负值时,你会得到-1。这就是为什么有时会出现未定义的原因
基本上,删除 - 1
就可以了
关于javascript - 弹出一个数组的随机字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32522036/