JavaScript 如何用随机值创建一个数组
我们可以使用JavaScript的Math.random()方法来生成随机值。JavaScript为我们提供了不同的数组方法,比如from()、fill()和push(),这些方法可以用来创建一个带有随机值的数组。
JavaScript中的数组是一个强大的功能,允许你存储不同数据类型的值的集合。它们在许多应用程序中被广泛使用,而拥有一个随机值的数组在某些情况下是非常有用的。
随机值数组是一个存储在数组中的随机生成的数字的集合。随机值数组中的数值可以使用内置函数或自定义算法生成。数组的大小和数值的范围可以根据需要指定。
使用Math.random()
Math.random()是最常见的内置JavaScript方法之一,可以生成0(包容)和1(排他)之间的随机数。它可以用来为各种目的生成随机数,例如用于模拟、游戏和统计应用。
我们使用for循环和Math.random()方法来创建一个数组。请看下面的语法 –
语法
以下是使用循环和Math.random()方法创建一个具有随机值的数组的语法。
for (let i = 0; i < 20; i++) {
randomArr.push(Math.random());
}
上面的语法创建了一个0到1之间的20个数字的数组。
要创建一个随机自然数的数组,我们可以使用下面的语法—
for (let i = 0; i < 20; i++) {
randomArr.push(Math.floor(Math.random() * 100) + 1);
}
例子
在下面的例子中,我们创建了一个由20个1到100之间的随机数组成的数组。
<html>
<body>
<p id="array"></p>
<script>
let randomArr = [];
for (let i = 0; i < 20; i++) {
randomArr.push(Math.floor(Math.random() * 100) + 1);
}
document.getElementById("array").innerHTML = JSON.stringify(randomArr);
</script>
</body>
</html>
在这个例子中,我们首先创建了一个名为randomArr的空数组。然后我们使用for循环迭代10次,在每次迭代中,我们使用Math.random()函数生成一个0到1之间的随机数。最后,我们使用Math.floor()函数将这个数字四舍五入到最近的整数。然后我们使用push()方法将这个随机数添加到randomArr中。
由于每次执行代码时都会产生随机值,所以输出会发生变化。
使用Array.from()方法
Array.from()方法和map()方法可以在JavaScript中一起使用,用指定函数生成的值创建一个数组。Array.from()方法从一个类似数组或可迭代对象中创建一个数组,而map()方法可以用来对数组中的每个元素应用一个函数。
例子
在这个例子中,我们给Array.from()方法传递了两个参数:一个长度属性为10的对象和一个返回1到100之间随机数的函数。Array.from()方法创建了一个具有给定长度的新数组,并将调用所提供函数的结果填入其中。
<html>
<body>
<p id="array"></p>
<script>
const randomArr = Array.from({length: 10}, () => Math.floor(Math.random() * 100) + 1);
document.getElementById("array").innerHTML = JSON.stringify(randomArr);
</script>
</body>
</html>
使用Array.fill()方法
Array.fill()方法是在JavaScript中用随机值创建一个数组的另一种方法。它允许你用一个静态值或一个由函数生成的值来填充一个数组。让我们看看如何使用Array.fill()方法来创建一个带有随机值的数组。
<html>
<body>
<p id="array"></p>
<script>
let result = new Array(10)
result = result.fill(0).map(() => Math.floor(Math.random() * 100));
document.getElementById("array").innerHTML = JSON.stringify(result);
</script>
</body>
</html>
总之,随机值数组是编程中许多应用的有用工具,特别是在模拟、游戏和统计方面。JavaScript提供了几种生成随机值数组的方法,包括使用Math.random()方法、for循环、Array.fill()方法、Array.from()方法与map(),以及Array构造器。
这些方法中的每一个都提供了一种创建随机值数组的方法,选择最佳方法取决于你项目的具体要求。Math.random()函数是一种简单明了的生成随机值的方法,而for循环提供了对生成随机值的更多控制。Array.fill()方法和带有map()的Array.from()方法允许你用指定函数生成的值来填充数组,这使得生成随机值的数组变得很容易。