Math对象概述

Math(算数)对象的作用是:执行常见的算数任务。保存数学公式和信息.

与我们在JavaScript 直接编写计算功能相比,Math 对象提供的计算功能执行起来要快得多。

Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。

您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。

Math对象的属性

Math 对象包含的属性大都是数学计算中可能会用到的一些特殊值

console.log(Math.E);
console.log(Math.LN10);
console.log(Math.LN2);
console.log(Math.LOG2E);
console.log(Math.LOG10E);
console.log(Math.PI);
console.log(Math.SQRT1_2);
console.log(Math.SQRT2);

Math 对象的方法

 min()和 max()方法

Math.min()用于确定一组数值中的最小值。

Math.max()用于确定一组数值中的最大值。

// max()方法
console.log(Math.max(5,7)); //
console.log(Math.max(-3,5));//
console.log(Math.max(-3,-5));//-3
console.log(Math.max(7.25,7.31));//7.31 //min()方法
console.log(Math.min(5,7));//
console.log(Math.min(-3,5));//-3
console.log(Math.min(-3,-5));//-5
console.log(Math.min(7.25,7.30));//7.25 console.log(Math.min(2,4,3,6,3,8,0,1,3)); //最小值:0
console.log(Math.max(4,7,8,3,1,9,6,0,3,2)); //最大值:9

四舍五入方法:Math.ceil()

Math.ceil()执行向上舍入,即它总是将数值向上舍入为最接近的整数

 console.log(Math.ceil(25.9)); //
console.log(Math.ceil(25.5)); //
console.log(Math.ceil(25.1)); //

四舍五入方法:Math.floor()

Math.floor()执行向下舍入,即它总是将数值向下舍入为最接近的整数

 console.log(Math.floor(25.9)); //
console.log(Math.floor(25.5)); //
console.log(Math.floor(25.1)); //

四舍五入方法:Math.round()

Math.round()执行标准舍入,即它总是将数值四舍五入为最接近的整数

 console.log(Math.round(25.9)); //
console.log(Math.round(25.5)); //
console.log(Math.round(25.1)); //

random()方法

该方法返回介于 0 到 1 之间一个随机小数,不包括 0 和 1。

console.log(Math.random());

如果想获取大于这个范围的随机数的话,可以套用一下公式:值 = Math.floor(Math.random() * 总数 + 第一个值)

 //随机产生 1-10 之间的任意整数

 //先获取随机小数
var box = Math.random(); //将获取到的随机小数,乘以10等到0到10之间的小数,不包括0和10,最后加上1就可以等到1到10之间的小数
box = box*10+1; //将后面的小数截取掉(即将数值向下舍入),变成整数
box = Math.floor(box); console.log(box); //写成一句话就是:console.log(Math.floor(Math.random() * 10 + 1));
//5-14 之间的任意数(10+5-1=14)
console.log(Math.floor(Math.random() * 10 + 5)) //如果想要5到10 10-5+1 = 6 就是*6+5
console.log(Math.floor(Math.random() * 6 + 5))

为了更加方便的传递想要范围,可以定义一个函数,包含头和尾

function selectFrom(lower, upper) {
var sum = upper - lower + 1; //总数-第一个数+1
// var sum = upper - lower; //如果不包含尾的话就不用加1
return Math.floor(Math.random() * sum + lower);
} for (var i=0 ;i<10;i++) {
console.log(selectFrom(5,10));//直接传递范围即可

其他方法

JavaScript的内置对象(Math对象)的更多相关文章

  1. ES6新特性:Javascript中内置的延迟对象Promise

    Promise的基本使用: 利用Promise是解决JS异步执行时候回调函数嵌套回调函数的问题, 更简洁地控制函数执行流程: 通过new实例化Promise,  构造函数需要两个参数, 第一个参数为函 ...

  2. 第一百零八节,JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式

    JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式 学习要点: 1.Global对象 2.Math对象 ECMA-262对内置对象的定义是:"由ECMASc ...

  3. 一、JavaScript概述 二、JavaScript的语法 三、JavaScript的内置对象

    一.JavaScript的概述###<1>JavaScript的概念 又称ECMAScript,和java没有任何关系 嵌入在HTML元素中的 被浏览器解释运行的 一种脚本语言. ###& ...

  4. JavaScript (内置对象及方法)

    JavaScript中的对象分为3种:内置对象.浏览器对象.自定义对象 JavaScript 提供多个内置对象:Math/Array/Number/String/Boolean... 对象只是带有属性 ...

  5. JavaScript 标准内置对象

    JavaScript 标准内置对象或称全局的对象(global objects)不要和 全局对象(global object)混淆.这里说的全局的对象是说在全局作用域里的对象,全局作用域包含了全局对象 ...

  6. JavaScript 标准内置对象Promise使用学习总结

    Javascript标准内置对象Promise使用学习总结   by:授客 QQ:1033553122 1.   基础用法 var condition = true; let p = new Prom ...

  7. JavaScript要点(十七) Math 对象

    来源:JavaScript 参考手册 Math 对象 Math 对象用于执行数学任务. Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(). 语法 var ...

  8. 【Unity】3.1 利用内置的3D对象创建三维模型

    分类:Unity.C#.VS2015 创建日期:2016-04-02 一.基本概念 Unity已经内置了一些基本的3D对象,利用这些内置的3D对象就可以直接构建出各种3D模型(当然,复杂的三维模型还需 ...

  9. #9.6课堂JS总结#变量作用域 date()对象 math()对象

    一.变量的作用域 1.JavaScript的作用域链 首先看下下面这段代码: <script type="text/javascript"> var rain = 1; ...

  10. 【JavaScript】内置对象Math

    Math是具有用于数学常数和函数的属性和方法一内置对象.不是函数对象. 描述编辑 不像其他的全局对象,Math不是一个构造函数.所有属性和方法Math都是静态的.你指的是常数pi为Math.PI你调用 ...

随机推荐

  1. Maven私服 Nexus使用一例

    一.背景 本次搭建Nexus的私服是为了解决两件事 1.公司网络限制,部分项目组同事无法直接访问互联网,不能直接下载一些依赖的jar文件; 2.一些独立的jar无法通过Maven添加依赖的方式引入到项 ...

  2. mysql+高可用MMM

    一. MMM 简介:MMM 即 Multi-Master Replication Manager for MySQL:mysql 多主复制管理器,基于 perl 实现,关于 mysql 主主复制配置的 ...

  3. This relative module was not found (转载)

    vue踩坑-This relative module was not found 在使用vue.js的日期选择插件 的时候,报错如下   This relative module was not fo ...

  4. VS2017 启动调试出现 无法启动程序“http://localhost:15613” 操作在当前状态中是非法的。 同时附加进程也是错误的解决方法

    第一次发表这样的博客,不会如何的排版,还有很多的不懂,大神勿喷哈! 同时是给自己做的一次记录,已方便后面可能会同样出现该问题后不用像无头苍蝇一样到处百度乱找 VS2017 启动调试出现  无法启动程序 ...

  5. markdown基础入门

    一.标题 语法:# 文字 注意:1个#号代表标题1,两个代表标题2,依次类推 # 标题1 ## 标题2 ### 标题3 #### 标题4 ##### 标题5 ###### 标题6 二.加粗,斜体 语法 ...

  6. could not read Username for 'https://github.com': No error

    用idea往github上push代码的时候,突然的不能用了. 报could not read Username for 'https://github.com': No error错误. 原因不明. ...

  7. 微信小程序-查询快递

    1.新建快速启动项目 2.在设置里面勾选不校验合法域名,以防编译报错 3.在app.json中改一下窗口表现:app.json—"navigationBarTitleText": ...

  8. P3275 [SCOI2011]糖果

    题目描述 幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友们分配糖果,要求每个小朋友都要分到糖果.但是小朋友们也有嫉妒心,总是会提出一些要求,比如小明不希望小红分到的糖果比他的多,于是在分配 ...

  9. 活字格对接RF手持机与ERP系统,帮助RFID快速盘点方案落地

    这个玩意有点意思,要不要搞来玩玩? ----------- 射频技术(RF)是Radio Frequency的缩写,较常见的应用有无线射频识别(Radio Frequency Identificati ...

  10. iOS---------如何搭建ipv6环境

    第一步:首先打开共享 第二步:点击互联网共享,然后按option键.会出现创建NAT64网络 第三步:点击Wi-Fi共享,设置网络名称,频段:11.安全性:WPA2个人级.密码设置8位就可以了.然后在 ...