好程序员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。

}