Math对象

  Math 对象不是构造函数,它具有数学常数和函数的属性和方法,都是以静态成员的方式提供。

常用方法:

  1. Math.PI // 圆周率
  2. Math.random() // 生成随机数,生成0~1之间的随机数,包含0,不含1
  3. Math.floor() // 向下取整
  4. Math.ceil() // 向上取整
  5. Math.round() // 取整,四舍五入
  6. Math.abs() // 取绝对值
  7. Math.max() // 求最大值
  8. Math.min() // 求最小值
  9. Math.sin() // 求正弦值
  10. Math.cos() // 求余弦值
  11. Math.power() // 求指数次幂
  12. Math.sqrt() // 求平方根

案例:

  1、求 10-20 之间的随机数

  1. Math.random() -> [0, 1) 默认生成[0-1)之间小数
  2. 公式:Math.floor(Math.random() * (max - min + 1) + min); // 生成[min,max]之间的随机整数
  3.  
  4. function random(min, max) {
  5. return Math.floor(Math.random() * (max - min + 1) + min);
  6. }
  7.  
  8. console.log(random(10, 20)); // 调用函数,并输出结果

  2、随机生成颜色 RGB

  1. // 随机生成颜色RGB [0, 255] 整数
  2. // 定义生成随机数整数的函数
  3. function random(min, max) {
  4. return Math.floor(Math.random() * (max - min + 1) + min);
  5. }
  6. // 定义生成随机颜色的函数
  7. function randomRGB(min, max) {
  8. var color1 = random(min, max);
  9. var color2 = random(min, max);
  10. var color3 = random(min, max);
  11.  
  12. return 'rgb(' + color1 + ', ' + color2 + ', ' + color3 + ')';
  13. }
  14.  
  15. console.log(randomRGB(0, 255))

  3、模拟实现 max()/min()

  1. // max() 获取参数列表中的最大值;min() 获取参数列表中的最小值;
  2. var MyMath = { // 自定义一个对象
  3. max: function () { // 在对象内定义一个静态方法 max
  4. var max = arguments[0];
  5. for (var i = 1; i < arguments.length; i++) {
  6. if (max < arguments[i]) {
  7. max = arguments[i];
  8. }
  9. }
  10. return max;
  11. },
  12. min: function () { // 在对象内定义一个静态方法 min
  13. var min = arguments[0];
  14. for (var i = 1; i < arguments.length; i++) {
  15. if (min > arguments[i]) {
  16. min = arguments[i];
  17. }
  18. }
  19. return min;
  20. }
  21. };
  22.  
  23. console.log(MyMath.max(10, 1, 100, 20));
  24. console.log(MyMath.min(10, 1, 100, 20));

JavaScript 之 Math对象的更多相关文章

  1. javascript类型系统——Math对象

    × 目录 [1]常量 [2]函数 前面的话 javascript使用算术运算符实现基本的算术运算,如果要实现更加复杂的算术运算,需要通过Math对象定义的常量和函数来实现.和其他对象不同,Math只是 ...

  2. JavaScript数据类型 Math对象详解

    前言 javascript使用算术运算符实现基本的算术运算,如果要实现更加复杂的算术运算,需要通过Math对象定义的常量和函数来实现.和其他对象不同,Math只是一个静态对象,并没有Math()构造函 ...

  3. JavaScript的Math对象

    原文 简书原文:https://www.jianshu.com/p/8776ec9cfb58 大纲 前言 1.Math对象的值属性 2.Math对象的函数属性 3.Math对象的函数的使用 前言 Ma ...

  4. javascript之Math对象

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. JavaScript:Math 对象

    ylbtech-JavaScript:Math 对象 Math 对象用于执行数学任务. 使用 Math 的属性和方法的语法: var pi_value=Math.PI; var sqrt_value= ...

  6. javascript总结3:javaScript的 Math 对象

    Math 对象 Math 对象用于执行数学任务. Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(). Math 常用的方法 var n1=1234; v ...

  7. JavaScript中Math对象的方法介绍

    1.比较最值方法 比较最值有两种方法,max() 和 min() 方法. 1.1 max() 方法,比较一组数值中的最大值,返回最大值. var maxnum = Math.max(12,6,43,5 ...

  8. javascript操作Math对象的方法总结

    //数学函数--abs 返回数字的绝对值 var a; /*a = Math.abs(-12); alert(a); //12 //数学函数--acos 返回数的反余弦数 a = Math.acos( ...

  9. JavaScript里Math对象的ceil()、floor()、round()方法的区别

    ceil(x) 官方含义:对一个数进行上舍入.理解:ceiling为天花板的意思,意译为向上取整.即取得大于于等于x的最大整数. floor(x) 官方含义:对一个数进行下舍入.理解:floor为地板 ...

随机推荐

  1. 22-C#笔记-预编译指令

    基本和C++一致. 参考: http://www.runoob.com/csharp/csharp-preprocessor-directives.html

  2. 新版Notepad++加十六进制查看的插件HexEditor(转载+总结)

    用到hex文件查看,老版本的notepad++是可以安装的,新版本的是安装不了,这个差评啊, 但是网上有方法:https://github.com/chcg/NPP_HexEdit/releases下 ...

  3. Linux中关于samba的几个问题

    一.用smbclient命令登录成功但看不了文件 原因:SELinux的阻挡 解决:1.关闭SELinux  :  setenforce 0   (临时生效,重启后失效) 或vi /etc/sysco ...

  4. odoo技术笔记

    接触odoo将近半年: 学到的知识点整理如下:

  5. Layui 在新标签中打开页面 / 模拟点击菜单

    原文:https://blog.csdn.net/sr_www/article/details/81394365 核心代码: //在新标签页中 打开页面 function newTab(url, ti ...

  6. localStorage二次封装-----设置过期时间

    export default{ set(key,data,time){ let obj={ data=data, ctime:(new Date()).getTime(),//时间戳,同Date.no ...

  7. Math的round方法

    代码如下,后面的注释是输出的结果 public static void main(String[] args) { System.out.println(Math.round(0.399)); Sys ...

  8. 作业:用pygame实现俄罗斯方块

    用Pygame实现俄罗斯方块 参考资料后我安装了Pygame,参考了网上的代码实现了俄罗斯方块小游戏.我试着理解网上的代码的原理和含义,对这些代码的原理有了一个粗略地理解,代码通过参数,RGB值等来实 ...

  9. 学习spring源码-可参考的资料

    剑指Spring源码(二) https://www.cnblogs.com/codebear/p/10374261.html 使用idea和gradle编译spring5源码https://blog. ...

  10. An Open-Source Package for Knowledge Embedding- 知识嵌入为人机交互做支撑

    1.知识图谱建立好后,下一步怎么办? 现今,各个行业都在储备自己的数据,领域知识数据的获取已不再是问题.我们能够通过自然语言处理.爬虫技术.装饰器等技术将数据整理成结构化数据,之后再将其放入到已经定义 ...