JS产生随机数的几个用法详解

JS 产生随机数的几个用法详解

在前端开发中,生成随机数是常见的需求。在 JavaScript 中,我们有很多不同的方式来生成随机数,接下来将详细介绍常见的几种方式。

1. Math.random()方法

Math.random() 方法是 JavaScript 中生成伪随机数的默认方法。可以使用以下代码来生成 0 至 1 之间的随机小数。

const randomNum = Math.random();
console.log(randomNum); // 0.3816937904566245

如果需要生成区间内的随机整数,可以借助简单数学运算来得到结果:

// 生成 1 至 10 之间的整数
const randomInt = Math.floor(Math.random() * 10) + 1;
console.log(randomInt); // 5

以上代码中,Math.floor() 方法取整得到区间内的随机整数,而 * 10 是为了将生成的小数尺度放大十倍,使得可以取到 0 至 9 的整数,最后再加上 1,以得到 1 至 10 的整数。

2. Date.now() 方法

Date.now() 方法返回自 1970 年 1 月 1 日 00:00:00 UTC 经过的毫秒数。可以使用以下代码对生成数进行时间戳运算,来实现在不同时间调用时生成不同的伪随机数。

const randomNum = Date.now() % 100;
console.log(randomNum); // 26

执行结果中得到的数值为当前时间戳的最后两位数字。

3. Crypto.getRandomValues 方法

通过 Crypto 接口调用 Crypto.getRandomValues() 方法可以生成高质量、低伪随机度的随机数。以下是一个简单的使用示例:

const arr = new Uint8Array(1);
window.crypto.getRandomValues(arr);
console.log(arr[0]); // 120

• 首先使用 Uint8Array 构造器来创建一个只包含一个元素的数组;

• 然后使用 window.crypto.getRandomValues() 方法对数组进行赋值,该方法接受一个参数,即要赋值的数组;

• 最后使用数组来存储随机整数,数组中的元素对应于区间内的整数值。

结论

以上是JavaScript中产生随机数的三种常见方法,分别是:Math.random(),Date.now(),Crypto.getRandomValues()。如果需要生成区间内的随机数,可以配合使用一些数学函数来满足需求。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS产生随机数的几个用法详解 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • JavaScript Window 打开新窗口(window.location.href、window.open、window.showModalDialog)

    JavaScript Window 打开新窗口 有3种常用的JavaScript方法可以打开一个新窗口,它们分别是window.location.href、window.open和window.showModalDialog。接下来,我们将详细讲解它们的使用方法和区别。 window.location.href window.location.href 可以…

    JavaScript 2023年6月11日
    00
  • 利用js获取服务器时间的两个简单方法

    获取服务器时间对于某些应用场景来说是十分必要的,例如网站倒计时、实时数据时序分析等。下面是两个利用 JavaScript 获取服务器时间的简单方法: 方法一:Ajax + PHP 1.编写 PHP 脚本 在服务器上编写一个 PHP 脚本,用于获取服务器时间,例如以下脚本: <?php date_default_timezone_set(‘Asia/Sh…

    JavaScript 2023年5月27日
    00
  • JavaScript ES6中class定义类实例方法

    首先我们需要了解一下ES6中class定义类实例方法的基本语法。在ES6中,我们可以使用class语法来定义类。类中可以定义实例方法,与函数类似,实例方法可以访问类的属性和其他实例方法。 下面是定义一个简单的类,并在其中定义一个实例方法的示例代码: class Person { constructor(name, age) { this.name = nam…

    JavaScript 2023年6月10日
    00
  • JS实现去除数组中重复json的方法示例

    当我们处理包含多个json对象的数组数据时,可能需要将重复的json对象去重,以免造成数据混乱。以下是JS实现去除数组中重复json对象的方法示例及详细步骤: 方法一:使用Array.prototype.filter()和JSON.stringify() const arr = [{name: ‘Alice’, age: 23}, {name: ‘Bob’,…

    JavaScript 2023年6月11日
    00
  • JavaScript中Date对象的常用方法示例

    JavaScript中Date对象是用来表示日期和时间的对象,它对日期和时间的处理非常方便。下面是几个常用的Date对象的方法: 获取当前日期和时间 方法名称:getDate() 该方法返回日期(1-31)。 let today = new Date();   let day = today.getDate(); console.log("今天是&…

    JavaScript 2023年6月10日
    00
  • JavaScript中Cookie操作实例

    JavaScript中,我们可以使用Cookie来存储一些小型的文本数据,例如用户的登录状态、用户的个性化设置等等。Cookie的使用在网站中非常普遍,具有非常重要的意义。下面是JavaScript中“Cookie操作实例”的完整攻略。 一、什么是Cookie Cookie是由服务器传给客户端的一小段信息,客户端请求后就会一起发送到服务器上。例如,我们可以使…

    JavaScript 2023年6月11日
    00
  • asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页

    当我们需要在asp.net网站中实现数据分页展示的功能时,可以使用GridView控件来实现。下面是实现asp.net GridView 分页展示的完整攻略。 安装PagedList.Mvc 我们可以通过Nuget安装PagedList.Mvc,在Manage NuGet Packages界面搜索PagedList.Mvc进行安装。这是一个非常常用的分页库,…

    JavaScript 2023年6月11日
    00
  • 《javascript设计模式》学习笔记二:Javascript面向对象程序设计继承用法分析

    《javascript设计模式》学习笔记二:Javascript面向对象程序设计继承用法分析 一、前言 在Javascript中,对象继承有着重要的作用。深入学习Javascript的面向对象的程序设计,掌握继承用法,对于编写复杂的Javascript程序非常有用,本文将介绍Javascript中常用的继承方法和技巧。 二、原型链继承 原型链继承是Javas…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部