IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> js 随机取值 概率随机取值 -> 正文阅读

[JavaScript知识库]js 随机取值 概率随机取值

Math.floor()为向下取整
Math.random() 一个浮点型伪随机数字,在0(包括0)和1(不包括)之间。

得到一个两数之间的随机数

这个值不小于 min(有可能等于),并且小于(不等于)max

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

得到一个两数之间的随机整数

这个值不小于 min (如果 min 不是整数,则不小于 min 的向上取整数),且小于(不等于)max。

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

得到一个两数之间的随机整数,包括两个数在内

Math.floor(Math.random() * (max - min + 1)) + min; //含最大值,含最小值 

取0~30内的数字

Math.floor(Math.random()*30)

在这里插入图片描述

取数组中的 每个值 随机

let arr=[9,12,33,24,65,7]
arr[Math.floor(Math.random()*arr.length)]

在这里插入图片描述

随机出题 取题目中的一个 不重复题目

拿上面的案例会出现出现重复的所有我们要改变一下

let arr=[9,12,33,24,65,7]
arr.splice(Math.floor(Math.random()*arr.length),1)[0]
//这样每次取值 都要拿数组的下坐标 并且 每次都是 乘以数组的长度 这样就不会出现取出数组以后的值
//可以放在循环里取固定的数量 如要取3到题 放到一个新的数组里
let newArr=[]
for(let i=0; i<3; i++){
	newArr.push(arr.splice(Math.floor(Math.random()*arr.length),1)[0])
}

在这里插入图片描述
在这里插入图片描述

概率 随机取值

比如有一组数 arr=[1,2,3,4] 随机取值 要4出现的概率是80%

// 先将 数组中的4到达80%的概率
let arr=[1,2,3,4]
let probability=0.8 //概率
let newArr=[]
for(let i=0; i<probability/(1-probability)*arr.length; i++){
	newArr.push(4)
}
// 结果(17) [4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4] 出现17次4
//这时候要把 这17次插入arr数组中 但是要把arr 原始里的4去掉要不然会多出一个4 概率就不对了
//利用splice 去除里面的4 插入 newarr数组
arr.splice(arr.indexOf(4),1,...newArr)
//这时候 再从arr数组中随机取值  拿到4的概率就是 80%
arr.splice(Math.floor(Math.random()*arr.length),1)[0]

// 新的数组 arr
在这里插入图片描述

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-04-01 23:16:14  更:2022-04-01 23:19:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 4:40:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码