JavaScript 从数组中选取随机值
本教程将讨论如何使用 JavaScript 中的 Math.random()
函数从数组中选择一个随机值。
我们可以通过在 JavaScript 中使用其索引从给定数组中选择一个值。要从给定的数组中选择一个随机值,我们需要生成一个在 0 到数组长度范围内的随机索引。我们可以使用 Math.random()
函数生成一个随机值,并设置这个随机值的范围,我们必须将它乘以我们可以使用 length
函数得到的数组长度。
Math.random()
函数生成的随机值是一个浮点值。要将浮点值转换为整数,我们必须使用 Math.floor()
函数。Math.floor()
函数将浮点数转换为小于给定数字的整数。例如,让我们创建一个包含五个值的数组并从中随机选择一个值并将其显示在控制台上。请参考下面的代码。
var myArray = ['one', 'two', 'three', 'four', 'five'];
var rand = Math.floor(Math.random()*myArray.length);
var rValue = myArray[rand];
console.log(rValue)
输出:
two
在上面的代码中,随机索引将存储在变量 rand
中,使用这个索引我们可以从数组中选择一个随机值,该值将存储在变量 rValue
中。你还可以使用按位 NOT
运算符 ~~
或按位 OR
运算符 |
而不是 Math.floor()
函数将浮点数转换为整数。使用按位运算符更快,但它可能不适用于包含数百万个值的数组。例如,让我们使用按位 NOT
运算符生成一个随机数。请参考下面的代码。
var myArray = ['one', 'two', 'three', 'four', 'five'];
var rand = ~~(Math.random()*myArray.length);
var rValue = myArray[rand];
console.log(rValue)
输出:
one
现在,让我们使用按位 OR
运算符生成一个随机数。请参考下面的代码。
var myArray = ['one', 'two', 'three', 'four', 'five'];
var rand = Math.random()*myArray.length | 0;
var rValue = myArray[rand];
console.log(rValue)
输出:
three
如果再次运行代码,输出将发生变化。你还可以创建一个函数来从给定数组中选择随机值,这样你就不必重写所有代码。例如,让我们创建一个函数来从给定数组中选取随机值并使用数组对其进行测试。请参考下面的代码。
function RandArray(array){
var rand = Math.random()*array.length | 0;
var rValue = array[rand];
return rValue;
}
var myArray = ['one', 'two', 'three', 'four', 'five', 'six'];
var rValue = RandArray(myArray);
console.log(rValue)
输出:
six
如果再次运行代码,输出将发生变化。现在,要从数组中选择一个随机值,你只需调用 RandArray()
函数。
相关文章
使用 CSS 和 JavaScript 制作文本闪烁
发布时间:2023/04/28 浏览次数:146 分类:CSS
-
本文提供了使用 CSS、JavaScript 和 jQuery 使文本闪烁的详细说明。
在 PHP 变量中存储 Div Id 并将其传递给 JavaScript
发布时间:2023/03/29 浏览次数:69 分类:PHP
-
本文教导将 div id 存储在 PHP 变量中并将其传递给 JavaScript 代码。
在 JavaScript 中从字符串中获取第一个字符
发布时间:2023/03/24 浏览次数:93 分类:JavaScript
-
在本文中,我们将看到如何使用 JavaScript 中的内置方法获取字符串的第一个字符。
在 JavaScript 中获取字符串的最后一个字符
发布时间:2023/03/24 浏览次数:141 分类:JavaScript
-
本教程展示了在 javascript 中获取字符串最后一个字符的方法