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_05_原型继承原理
Oct 13 Javascript
8款非常棒的响应式jQuery 幻灯片插件推荐
Feb 02 Javascript
javascript 判断中文字符长度的函数代码
Aug 27 Javascript
javascript中Math.random()使用详解
Apr 15 Javascript
javascript实现checkbox全选的代码
Apr 30 Javascript
使用 JavaScript 进行函数式编程 (一) 翻译
Oct 02 Javascript
浅谈html转义及防止javascript注入攻击的方法
Dec 04 Javascript
详解自动生成博客目录案例
Dec 09 Javascript
Vue + Webpack + Vue-loader学习教程之功能介绍篇
Mar 14 Javascript
每个 JavaScript 工程师都应懂的33个概念
Oct 22 Javascript
JS+HTML5本地存储Localstorage实现注册登录及验证功能示例
Feb 10 Javascript
JavaScript 正则应用详解【模式、欲查、反向引用等】
May 13 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
关于使用coreseek并为其做分页的介绍
2013/06/21 PHP
深入浅析php中sprintf与printf函数的用法及区别
2016/01/08 PHP
PHP6连接SQLServer2005的三部曲
2016/04/15 PHP
PHP检查URL包含特定字符串实例方法
2019/02/11 PHP
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
JavaScript中的Document文档对象
2008/01/16 Javascript
JavaScript 序列化对象实现代码
2009/12/18 Javascript
jQuery自动切换/点击切换选项卡效果的小例子
2013/08/12 Javascript
代码获取历史上的今天发生的事
2014/04/11 Javascript
javascript动态修改Li节点值的方法
2015/01/20 Javascript
JQuery插件Quicksand实现超炫的动画洗牌效果
2015/05/03 Javascript
jQuery判断元素是否显示 是否隐藏的简单实现代码
2016/05/19 Javascript
JQuery为元素添加样式的实现方法
2016/07/20 Javascript
js 定义对象数组(结合)多维数组方法
2016/07/27 Javascript
jQuery实现圣诞节礼物传送(花式轮播)
2016/12/25 Javascript
javascript 动态生成css代码的两种方法
2017/03/17 Javascript
IE9 elementUI文件上传的问题解决
2018/10/17 Javascript
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
2019/01/24 Javascript
vue 路由子组件created和mounted不起作用的解决方法
2019/11/05 Javascript
vue 中几种传值方法(3种)
2019/11/12 Javascript
JS apply用法总结和使用场景实例分析
2020/03/14 Javascript
Vue-cli3多页面配置详解
2020/03/22 Javascript
Python中使用Tkinter模块创建GUI程序实例
2015/01/14 Python
python+matplotlib实现礼盒柱状图实例代码
2018/01/16 Python
Python常见的pandas用法demo示例
2019/03/16 Python
Python-for循环的内部机制
2020/06/12 Python
Python3爬虫中Splash的知识总结
2020/07/10 Python
html5/css3响应式页面开发总结
2018/10/16 HTML / CSS
荷兰男士时尚网上商店:Suitable
2017/12/25 全球购物
Omio葡萄牙:全欧洲低价大巴、火车和航班搜索和比价
2019/02/09 全球购物
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
Hotels.com越南:酒店预订
2019/10/29 全球购物
小小的船教学反思
2014/02/21 职场文书
中国梦我的梦演讲稿
2014/04/23 职场文书
2014镇党委书记党建工作汇报材料
2014/11/02 职场文书
总经理聘用协议书
2015/09/21 职场文书