当前位置:首页 > JavaScript

js实现随机

2026-03-14 23:06:33JavaScript

生成随机数

使用 Math.random() 方法生成一个介于 0(包含)和 1(不包含)之间的随机浮点数。

const randomNumber = Math.random();
console.log(randomNumber); // 输出类似 0.123456789

生成指定范围的随机整数

结合 Math.random()Math.floor() 生成指定范围内的随机整数。例如生成 1 到 10 之间的随机整数:

function getRandomInt(min, max) {
  return Math.floor(Math.random() * (max - min + 1)) + min;
}
const randomInt = getRandomInt(1, 10);
console.log(randomInt); // 输出 1 到 10 之间的整数

生成随机字符串

使用 Math.random()toString(36) 生成随机字符串,可以截取所需长度。

const randomString = Math.random().toString(36).substring(2, 10);
console.log(randomString); // 输出类似 "4f9d2h7k"

从数组中随机选择元素

使用 Math.random() 从数组中随机选择一个元素。

const array = ['apple', 'banana', 'orange', 'grape'];
const randomElement = array[Math.floor(Math.random() * array.length)];
console.log(randomElement); // 随机输出数组中的一个元素

生成随机颜色

生成随机的十六进制颜色代码。

function getRandomColor() {
  return `#${Math.floor(Math.random() * 0x1000000).toString(16).padStart(6, '0')}`;
}
const randomColor = getRandomColor();
console.log(randomColor); // 输出类似 "#a1b2c3"

打乱数组顺序

使用 Fisher-Yates 洗牌算法随机打乱数组顺序。

function shuffleArray(array) {
  for (let i = array.length - 1; i > 0; i--) {
    const j = Math.floor(Math.random() * (i + 1));
    [array[i], array[j]] = [array[j], array[i]];
  }
  return array;
}
const shuffledArray = shuffleArray([1, 2, 3, 4, 5]);
console.log(shuffledArray); // 输出类似 [3, 1, 5, 2, 4]

生成随机布尔值

生成随机的布尔值(true 或 false)。

js实现随机

const randomBoolean = Math.random() >= 0.5;
console.log(randomBoolean); // 随机输出 true 或 false

这些方法覆盖了常见的随机需求,可以根据具体场景选择合适的方法。

标签: js
分享给朋友:

相关文章

js 实现vue模板

js 实现vue模板

实现 Vue 模板的 JavaScript 方法 通过原生 JavaScript 可以实现类似 Vue 的模板渲染功能,主要包括数据绑定、指令处理和模板解析。以下是核心实现思路: 数据绑定与…

js 实现vue

js 实现vue

Vue.js 的基本实现 在 JavaScript 中实现 Vue.js 的核心功能,可以通过数据绑定、响应式系统和虚拟 DOM 来实现。以下是实现 Vue.js 核心功能的简化版本。 数据响应式系…

js实现vr

js实现vr

使用WebXR API实现VR体验 WebXR是浏览器中实现VR和AR体验的标准API,它取代了早期的WebVR。现代浏览器如Chrome、Edge和Firefox已支持WebXR。 // 初始化W…

链表实现js

链表实现js

链表的基本概念 链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和一个指向下一个节点的指针(单向链表)或两个指针(双向链表)。与数组不同,链表在内存中非连续存储,插入和删除操作更高效,但随机…

js实现密码

js实现密码

密码强度验证 使用正则表达式验证密码强度是一种常见方法。以下代码检查密码是否包含大小写字母、数字和特殊字符,且长度至少为8位: function checkPasswordStrength(pass…

js节流实现

js节流实现

节流的概念 节流(Throttle)是一种限制函数执行频率的技术,确保函数在一定时间间隔内只执行一次。常用于滚动事件、窗口调整等高频触发的场景。 基础实现方法 使用时间戳判断是否执行函数:…