好程序员web前端教程分享JavaScript Math(算数)对象

JavaScript Math对象使用教程分享
本文是好程序员web前端教程,分享了JavaScript Math对象。介绍了Math对象作用、算数值及算数方法,如round、random、max、min等方法的使用。还给出根据上下限生成随机数、根据概率随机生成bool值等多种伪随机数生成玩法。

  好程序员web前端教程分享JavaScript Math(算数)对象,这里小编每天也会分享一下干货给大家。那么今天说道的就是好程序员web前端培训课程中的章节。

JavaScript Math(算数) 对象

Math(算数)对象的作用是:执行常见的算数任务。

在线实例

round()

如何使用 round()。

random()

如何使用 random() 来返回 0 到 1 之间的随机数。

max()

如何使用 max() 来返回两个给定的数中的较大的数。(在 ECMASCript v3 之前,该方法只有两个参数。)

min()

如何使用 min() 来返回两个给定的数中的较小的数。(在 ECMASCript v3 之前,该方法只有两个参数。)

Math 对象

Math(算数)对象的作用是:执行普通的算数任务。

Math 对象提供多种算数值类型和函数。无需在使用这个对象之前对它进行定义。

使用Math的属性/方法的语法:

var x=Math.PI;

var y=Math.sqrt(16);

注意: Math对象无需在使用这个对象之前对它进行定义。

算数值

 

JavaScript 提供 8 种可被 Math 对象访问的算数值:

 

你可以参考如下Javascript常量使用方法:

 

Math.E

 

Math.PI

 

Math.SQRT2

 

Math.SQRT1_2

 

Math.LN2

 

Math.LN10

 

Math.LOG2E

 

Math.LOG10E

 

算数方法

 

除了可被 Math 对象访问的算数值以外,还有几个函数(方法)可以使用。

 

下面的例子使用了 Math 对象的 round 方法对一个数进行四舍五入。

 

document.write(Math.round(4.7));

 

上面的代码输出为:

 

5

 

下面的例子使用了 Math 对象的 random() 方法来返回一个介于 0 和 1 之间的随机数:

 

document.write(Math.random());

 

上面的代码输出为:

 

0.4321440459646637

 

下面的例子使用了 Math 对象的 floor() 方法和 random() 来返回一个介于 0 和 11 之间的随机数:

 

document.write(Math.floor(Math.random()*11));

 

上面的代码输出为:

 

5

 

JavaScript Boolean(布尔)对象

 

JavaScript RegExp 对象

1 篇笔记

whi***08@outlook.com

 

对于伪随机数,JS 有很多种玩法来生成我们所需要的伪随机数。

 

根据上下限生成随机数:

 

var rand = (min,max) => Math.round(Math.random()*(max-min))+min;

 

//Max为最大值,Min为最小值

 

根据概率随机生成 bool 值:

 

function randBool(percent=0.5){

 

//percent为概率,默认0.5(50%)。

 

if(Math.random()<percent)//如果随机数小于概率值,返回true,否则返回false。

 

return true;

 

else

 

return false;

 

}

 

随机生成指定字符:

 

function randChar(length,characters="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"){

 

//length为所需长度,characters为所包含的所有字符,默认为字母+数字。

 

characters=characters.split("");//分割字符。

 

result="";//返回的结果。

 

while(result.length<length) result+=characters[Math.round(Math.random()*characters.length)];

 

return result;

 

}

 

随机生成字符的另一种玩法:

 

function randCharAnother(length,rangeMin=0x80,rangeMax=0x7FF){

 

//length长度,rangeMin为最小Unicode码,rangeMax为最大Unicode码。

 

result="";

 

while(result.length<length) result+=String.fromCharCode(Math.round(Math.random()*(rangeMax-rangeMin))-rangeMin);

 

return result;

 

}

 

随机从数组中取出一个东东:

 

Array.prototype.pick = function(){

 

//不能为 ()=>{/*函数*/},否则this会指向Window。

 

return this.length?Math.round(Math.random()*(this.length-1)):undefined;//如果长度为0,返回undefined。

 

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值