Math(回顾)

JavaScript数学函数详解:取绝对值、取整与随机数生成,
本文介绍了JavaScript中的Math对象,包括如何取绝对值、向上/向下取整、四舍五入,找到最大/最小值,开方,计算幂次以及生成随机数。还展示了如何从数组中获取最大值和创建随机验证码的方法。

概念

Math称为数学函数,提供了很多操作数字的方法

typeof Math;//'object'

取绝对值

Math.abs(x)

取绝对值
注意:传的不是number类型,会先进行隐式类型转换

Math.abs(-1); // 1
Math.abs('-1'); // 1

取整数

Math.ceil(x)

把一个数向上取整

Math.ceil(1.1);//2
Math.ceil(-1.1);//-1
Math.ceil('1.1');//2

Math.floor(x)

把一个数向下取整

Math.floor(1.9);//1
Math.floor(-1.9);//-2
Math.floor('1.9');//1

Math.round(x)

四舍五入

Math.round(1.4);//1
Math.round(1.5);//2
Math.round(-1.5);//-1
Math.round('1.5')//2

取最大 / 最小

Math.max(x1,x2,…)

获取最大值
注意:参数中至少有一个参数无法被转换成数字,则会返回 NaN

Math.max(1, 2, 3);//3
Math.max(1, 2, '3');//3
Math.max([1, 2, 3]);//NaN

Math.min(x1, x2,…)

获取最小值
注意:参数中至少有一个参数无法被转换成数字,则会返回 NaN

Math.mix(1, 2, 3);//1
Math.mix(1, 2, '3');//1
Math.mix([1, 2, 3]);//NaN

获取数组中的最大值

  • 方法1:使用 apply 方法
Math.max.apply(null, [1,2,3])
  • 方法2:使用 扩展运算符
Math.max(...[1, 2, 3])

开方/取幂

Math.sqrt(x)

给一个数开平方
注意:参数为负值,则会返回 NaN

Math.sqrt(9); // 3
Math.sqrt(0);  // 0
Math.sqrt(-1); // NaN
Math.sqrt(-0); // -0

Math.pow(base, x)

返回基数的指数次幂
参数1:基数
参数2:指数
通过 ES6的 ** 也可实现

Math.pow(2,3);//8
2 ** 3;//8

取随机数

Math.random()

获取0到1之间的随机小数(不包含0和1)

Math.random();//随机小数

获取 n 到 m 的随机整数(包含 n 和 m)

Math.round(Math.random()*(m-n)+n)

圆周率

Math.PI

Math.PI;//3.141592653589793

封装获取随机验证码

// 考虑重复
var btn = document.querySelector("button");
function createCode() {
  let area ="0123456789QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm",
  codeText = "",
  ran,
  char;
  while (codeText.length < 4) {
    ran = Math.round(Math.random() * 61);
    char = area.charAt(ran);
    if (codeText.toUpperCase().indexOf(char.toUpperCase()) === -1) {
      codeText += area.charAt(ran);
    }
  }
  btn.innerHTML = codeText;
}
btn.onclick = createCode;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柳晓黑胡椒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值