javascript中Math.random()使用详解


Posted in Javascript onApril 15, 2015

Math.random()方法返回大于等于 0 小于 1 的一个随机数。对于某些站点来说,这个方法非常实用,因为可以利用它来随机显示一些名人名言和新闻事件。

1. 在连续整数中取得一个随机数

值 = Math.floor(Math.random() * 可能值的总数 + 第一个可能的值)
例:产生1-10的随机数

var rand1 = Math.floor(Math.random() * 10 + 1);

编写产生startNumber至endNumber随机数的函数

function selectFrom(startNumber, endNumber) {

    var choice = endNumber - startNumber + 1;

    return Math.floor(Math.random() * choice + startNumber)

}

var rand2 = selectFrom(2,8);//产生2至8的随机数

2. 在不相邻整数中取得一个随机数

2.1 在不相邻的两个整数中取得一个随机数

例:随机产生2或4中的一个数

var rand3 = Math.random() < 0.5 ? 2 : 4;

2.2 在不相邻的多个整数中产生一个随机数

结合函数参数数组,可编写在不相邻的多个整数中产生一个随机值的函数

function selectFromMess() {

    return arguments[Math.floor(Math.random() * arguments.length)]

}

//随机产生1、6、8中的一个数

var rand4 = selectFromMess(1, 6, 8);

//也可随机产生文本

var randomTxt1 = selectFromMess("安慰奖", "二等奖", "一等奖");

每次要输入这么多参数比较麻烦,可以改写一下函数

function selectFromMessArray(arr) {

    return arr[Math.floor(Math.random() * arr.length)]

}

var arrayTxt=["一","二","三","四","五"];

var randTxt2 = selectFromMessArray(arrayTxt);

或者不改变原有方法,可以利用apply()这个方法传递数组参数

var randTxt3 = selectFromMess.apply(null,arrayTxt);

关于apply方法的使用可以看https://3water.com/article/42705.htm

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
javascript call方法使用说明
Jan 11 Javascript
Javascript实现简单的富文本编辑器附演示
Jun 16 Javascript
node.js中的fs.readdirSync方法使用说明
Dec 17 Javascript
你所不了解的javascript操作DOM的细节知识点(一)
Jun 17 Javascript
js和C# 时间日期格式转换的简单实例
May 28 Javascript
jQuery ready()和onload的加载耗时分析
Sep 08 Javascript
jQuery解析返回的xml和json方法详解
Jan 05 Javascript
微信小程序--onShareAppMessage分享参数用处(页面分享)
Apr 18 Javascript
javascript编程开发中取色器及封装$函数用法示例
Aug 09 Javascript
JS动画定时器知识总结
Mar 23 Javascript
搭建一个Koa后端项目脚手架的方法步骤
May 30 Javascript
微信公众号平台接口开发 菜单管理的实现
Aug 14 Javascript
js数组依据下标删除元素
Apr 14 #Javascript
js获取数组的最后一个元素
Apr 14 #Javascript
jQuery实现鼠标划过修改样式的方法
Apr 14 #Javascript
jquery仿百度经验滑动切换浏览效果
Apr 14 #Javascript
jQuery获得子元素个数的方法
Apr 14 #Javascript
jQuery简单实现遍历数组的方法
Apr 14 #Javascript
jquery插件orbit.js实现图片折叠轮换特效
Apr 14 #Javascript
You might like
PHP工程师VIM配置分享
2015/12/15 PHP
Laravel中10个有用的用法小结
2019/05/06 PHP
服务端 VBScript 与 JScript 几个相同特性的写法 By shawl.qiu
2007/03/06 Javascript
利用Ext Js生成动态树实例代码
2008/09/08 Javascript
让div层随鼠标移动的实现代码 ie ff
2009/12/18 Javascript
线路分流自动智能跳转代码,自动选择最快镜像网站(js)
2011/10/31 Javascript
JS获取html对象的几种方式介绍
2013/12/05 Javascript
JS实现点击链接取消跳转效果的方法
2014/01/24 Javascript
javascript关于运动的各种问题经典总结
2015/04/27 Javascript
JS数字抽奖游戏实现方法
2015/05/04 Javascript
详解页面滚动值scrollTop在FireFox与Chrome浏览器间的兼容问题
2015/12/03 Javascript
高效的jquery数字滚动特效
2015/12/17 Javascript
js的各种排序算法实现(总结)
2016/07/23 Javascript
微信小程序 canvas API详解及实例代码
2016/10/08 Javascript
Jquery Easyui验证组件ValidateBox使用详解(20)
2016/12/18 Javascript
获取今天,昨天,本周,上周,本月,上月时间(实例分享)
2017/01/04 Javascript
React 组件间的通信示例
2018/06/14 Javascript
原生JS实现多条件筛选
2020/08/19 Javascript
[03:18]【TI9纪实】社区大触GL与木木
2019/08/25 DOTA
《Python之禅》中对于Python编程过程中的一些建议
2015/04/03 Python
python OpenCV学习笔记直方图反向投影的实现
2018/02/07 Python
python删除服务器文件代码示例
2018/02/09 Python
Tensorflow分类器项目自定义数据读入的实现
2019/02/05 Python
Django使用模板后无法找到静态资源文件问题解决
2019/07/19 Python
Python实现一个数组除以一个数的例子
2019/07/20 Python
2014年自我评价
2014/01/04 职场文书
小班重阳节活动方案
2014/02/08 职场文书
历史专业大学生职业生涯规划书
2014/03/13 职场文书
食品销售计划书
2014/04/26 职场文书
2014年司机工作总结
2014/11/21 职场文书
2015年党员个人剖析材料
2014/12/18 职场文书
装修公司工程部经理岗位职责
2015/04/09 职场文书
农村婚庆主持词
2015/06/29 职场文书
电工实训心得体会
2016/01/14 职场文书
GO语言异常处理分析 err接口及defer延迟
2022/04/14 Golang
vue使用watch监听属性变化
2022/04/30 Vue.js