A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

说到Javascript对象,能想到好多,比如创建数组使用的Array,比如创建函数使用的Function等等。今天我要说的是Math对象。

Math对象
首先Math对象是什么,Math对象的作用又是什么?
Math对象属于JavaScript对象中的内置对象,它不同于Array、Function、Object等对象可以创建构造,它是由ECMAScript实现提供,在程序开始执行时出现,可以通过调用其中的方法完成一些数学运算

Math中常用的属性
Math.PI:相当于数学中的π,常用于与圆相关的计算
[JavaScript] 纯文本查看 复制代码
//求半径为10的圆的面积,圆的面积公式:s = π * r * r;
var cir = Math.PI * 10 * 10;//将Math.PI当做π使用参与数学运算
console.log(cir);

Math中常用的方法
  • Math.random():随机数,随机产生0-1之间的数(不包括1),比较常用的Math方法
    [JavaScript] 纯文本查看 复制代码
    //随机输出一个0-100的整数
    var num = parseInt(Math.random() * 101);
    //因为Math.random取得是0-1不包括1,将他们乘101取值是0-101不包括101
    //然后将其取整获得整数,取得0-100之间的整数
    console.log(num);
    
  • Math.round():四舍五入取整
    [JavaScript] 纯文本查看 复制代码
    var num1 = 3.14;
    var num2 = 3.94;
    console.log(Math.round(num1));//3
    console.log(Math.round(num2));//4
    
  • Math.ceil():向上取整
    [JavaScript] 纯文本查看 复制代码
    var num = 3.14;
    console.log(Math.ceil(num));//4
    
  • [color=rgba(0, 0, 0, 0.749019607843137)]Math.floor() : 向下取整
    [JavaScript] 纯文本查看 复制代码
    var num = 3.94;[/size][/font]
    [font=Microsoft YaHei, SF Pro Display, Roboto, Noto, Arial, PingFang SC, sans-serif][color=rgba(0, 0, 0, 0.749019607843137)][size=16px]console.log(Math.floor(num));//3[/size][/font]
    [font=Microsoft YaHei, SF Pro Display, Roboto, Noto, Arial, PingFang SC, sans-serif][color=rgba(0, 0, 0, 0.749019607843137)][size=16px]

注意:虽然parseInt()、Math.round()、Math.ceil()和Math.floor()都是取整,但是存在差别。parseInt()是取整数部分,在效果上和Math.floor()相同;Math.ceil()是向上取整;Math.round()是四舍五入取整,根据小数部分首位的不同得到的结果也不同

Math.max() : 参数是多个数字,求最大数字
[JavaScript] 纯文本查看 复制代码
var num = Math.max(1,2,3,4,5,6);
console.log(num);

  • Math.min() : 参数是多个数字,求最小数字
    [JavaScript] 纯文本查看 复制代码
    var num = Math.min(1,2,3,4,5,6);
    console.log(num);
    
  • Math.pow(x,y):求幂,x的y次方
    [JavaScript] 纯文本查看 复制代码
    var num = Math.pow(2,3);//第一个参数为底数,第二个参数为指数,所以这里是2的3次方
    console.log(num);//8
    
  • Math.sqrt():开根号。
    [JavaScript] 纯文本查看 复制代码
    var num = Math.sqrt(16);
    console.log(num);//4
    
  • Math.abs():求绝对值
    [JavaScript] 纯文本查看 复制代码
    var num1 = 10;
    var num2 = -10;
    console.log(num1);//10
    console.log(num2);//10
    



174 个回复

正序浏览
66666666666666666
回复 使用道具 举报
又是干货贴,顶起
回复 使用道具 举报
奥利给
回复 使用道具 举报
奥利给
回复 使用道具 举报
回复 使用道具 举报
6666666666666666666666666
回复 使用道具 举报
我爱我1022 来自手机 中级黑马 2020-4-7 10:39:33
169#
棒棒哒
回复 使用道具 举报
回复 使用道具 举报
加油努力学习
回复 使用道具 举报

努力,奋斗呀
回复 使用道具 举报

努力,奋斗呀
回复 使用道具 举报
小公举 发表于 2020-3-24 12:03
谢谢楼主的分享   谢谢谢谢

努力,奋斗呀
回复 使用道具 举报
kdhdjdj 发表于 2020-3-25 16:45
棒棒的
棒棒的
棒棒的

努力,奋斗呀
回复 使用道具 举报

努力,奋斗呀
回复 使用道具 举报
王微 发表于 2020-3-25 15:54
666666666666666666666

努力,奋斗呀
回复 使用道具 举报
小公举 发表于 2020-3-24 12:03
谢谢楼主的分享   谢谢谢谢

努力,奋斗呀
回复 使用道具 举报

努力,奋斗呀
回复 使用道具 举报
yujq 发表于 2020-3-25 19:25
666666666666666666666

努力,奋斗呀
回复 使用道具 举报

努力,奋斗呀
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马