JavaScript 随机数 您所在的位置:网站首页 华为手机usb接口怎么设置 JavaScript 随机数

JavaScript 随机数

2023-07-20 18:14| 来源: 网络整理| 查看: 265

原文: https://www.freecodecamp.org/news/javascript-random-number-how-to-generate-a-random-number-in-js/

在使用 JavaScript 程序时,有时你可能需要生成一个随机数。

例如,你可能希望在开发 JavaScript 游戏(例如猜数字游戏)时生成一个随机数。

JavaScript 有许多用于处理数字和执行数学计算的内置方法。其中一种方法是 Math.random() 方法。

在本文中,你将学习如何使用 Math.random() 方法来检索随机数。

以下是我们将介绍的内容:

Math 对象简介Math.random() 语法分解如何生成具有指定 max 值的随机小数如何生成具有指定 min 和 max 范围的随机小数如何生成具有指定 max 值的随机整数如何生成具有(并包含)指定 max 值的随机整数如何生成具有指定 min 和 max 范围的随机整数如何在 JavaScript 中使用 Math——Math 对象简介

JavaScript 有内置的静态对象 Math,它允许你执行数学计算和运算。

Math 对象有一些内置方法,可以更准确地执行这些操作。

Math 对象方法的一般语法如下:

Math.methodName(number);

一些最流行的方法是:

Math.round()Math.ceil()Math.floor()Math.random()

让我们看一些如何实现这些方法的示例。

如果要将数字四舍五入到最接近的整数,请使用 Math.round() 方法:

console.log(Math.round(6.2)); // 6 console.log(Math.round(6.3)); // 6 console.log(Math.round(6.5)); // 7 console.log(Math.round(6.8)); // 7

如果要将数字向上舍入到最接近的整数,请使用 Math.ceil() 方法:

console.log(Math.ceil(6.2)); // 7 console.log(Math.ceil(6.3)); // 7 console.log(Math.ceil(6.5)); // 7 console.log(Math.ceil(6.8)); // 7

如果要将数字向下舍入到最接近的整数,请使用 Math.floor() 方法:

console.log(Math.floor(6.2)); // 6 console.log(Math.floor(6.3)); // 6 console.log(Math.floor(6.5)); // 6 console.log(Math.floor(6.8)); // 6

如果要生成随机数,请使用 Math.random() 方法:

console.log(Math.random()); // 你不会得到相同的输出 // 第一次运行程序: // 0.4928793139100267 // 第二次运行程序: // 0.5420802533292215 // 第三次运行程序: // 0.5479835477696466 JavaScript 中的 Math.random() 方法是什么

Math.random() 方法的语法如下:

Math.random();

该方法不带任何参数。

默认情况下,该方法返回一个介于 0 和 1 之间的随机小数(或浮点数)值。

需要注意的是,0 包含在内,而 1 不包含在内。

因此,它将返回一个大于或等于 0 且始终小于且从不等于 1 的值。

如何在 JavaScript 中使用 Math.random() 生成具有指定 max 的随机小数

如你目前所见,默认情况下,Math.random() 生成的数字很小。

如果你想生成一个从 0 开始并包含 0 并且也大于 1 的随机十进制数怎么办?为此,指定一个最大的数。

具体来说,你需要将此最大数与来自 Math.random() 的随机数相乘。

例如,如果要生成 0 到 10 之间的随机数,可以执行以下操作:

console.log(Math.random() * 10); // 你不会得到相同的输出 //9.495628210218175

在上面的示例中,我将作为限制的最大数(10)与 Math.random() 的结果数相乘。

请记住,在这种情况下,随机数将介于 0 和 10 之间——这意味着大于或等于 0 且小于且永远不会等于 10。

如何在 JavaScript 中使用 Math.random() 生成具有指定 min 和 max 范围的随机小数

如果你想在指定的数字范围内生成一个随机十进制数怎么办?

你在上一节中看到了如何指定最大值,但是如果你不希望范围从 0 开始(这是默认的起始范围),怎么办?为此,你还可以指定一个最小值。

在两个值(或范围)之间生成小数的语法是这样的:

Math.random() * (max - min) + min;

我们来看下面的例子:

// 指定最小值 - 范围开始的位置 let min = 20.4; // 指定最大值 - 范围将在哪里结束 let max = 29.8;

我创建了两个变量,min 和 max——其中 min 将是范围内的最小数字,而 max 将是最大的数字。

接下来,我使用你之前看到的语法在该范围内生成一个随机数:

let min = 20.4; let max = 29.8; let randomNum = Math.random() * (max - min) + min; console.log(randomNum); // 你不会得到相同的输出 // 23.309418058783486

这里需要注意的是 min 包含在内,因此随机数将大于或等于 20.4,而 max 不包含在内,因此结果将始终是小于且永远不会等于 29.8 的数字。

如何在 JavaScript 中使用 Math.random() 生成具有指定 max 的随机整数

到目前为止,你已经了解了如何生成随机十进制数。

也就是说,有一种方法可以使用 Math.random() 生成随机整数。

你需要将 Math.random() 计算的结果传递给之前看到的 Math.floor() 方法。

语法如下:

Math.floor(Math.random());

Math.floor() 方法会将随机十进制数四舍五入到最接近的整数。

最重要的是,你可以指定最大数。

因此,例如,如果你想生成一个介于 0 和 10 之间的随机数,你可以执行以下操作:

console.log(Math.floor(Math.random() * 10)); // 你不会得到相同的输出 // 0

在此示例中,我将最大数(在本例中为 10)与 Math.random() 的结果相乘,并将此计算的结果传递给 Math.floor()。

这里需要注意的是,随机数将介于 0(含)和 10(不含)之间。因此,数字可以大于或等于 0,并且小于且永远不等于 10。

如何在 JavaScript 中使用 Math.random() 生成具有(并包含)指定 max 的随机整数

在上一节的示例中,我生成了一个介于数字 0(含)和 10(不含)之间的随机数。

到目前为止,你已经看到无法生成等于指定最大值的随机数。

如果要生成包含指定最大值的随机数怎么办?

解决这个问题的方法是在计算过程中加 1。

所以,让我们重温上一节的代码:

console.log(Math.floor(Math.random() * 10));

你现在将重新编写代码,如下所示:

console.log(Math.floor(Math.random() * 10) + 1); // 你不会得到相同的输出 // 10

这里需要注意的是,这段代码会生成一个介于 1(不是 0)和 10 之间的随机整数——包括 10。

如何在 JavaScript 中使用 Math.random() 生成具有指定 min 和 max(包含)范围的随机整数

到目前为止,你已经了解了如何生成具有指定最大值的随机整数。

正如你在上面的示例中看到的,使最大数字包含在内的代码使用数字 1 作为起始数字,而不是 0。

也就是说,有一种方法可以让你指定一个包含的数字范围。为此,你需要指定 min 和 max。

在上一节中,你看到了如何在指定范围内生成随机数,代码类似。唯一的变化是你将结果传递给 Math.floor() 方法以将小数四舍五入到最接近的整数。

代码如下:

Math.floor(Math.random() * (max - min) + min);

要使该范围包含在内,你将执行以下操作:

console.log(Math.floor(Math.random() * (max - min + 1)) + min);

因此,要生成数字 0(含)和 10(含)之间的随机数,你可以编写以下代码:

let min = 0; let max = 10; console.log(Math.floor(Math.random() * (max - min + 1)) + min); //你不会得到相同的输出 // 0 总结

好啦,你现在知道了 Math.random() 方法的工作原理以及如何使用它的一些方法。

要了解有关 JavaScript 的更多信息,请访问 freeCodeCamp 的 JavaScript 算法和数据结构认证。这是一个免费的、精心设计的、结构化的课程,你将在其中以交互方式学习编程。最后,你还将构建 5 个项目以获得认证并巩固你的知识。

谢谢你阅读本文!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有