JS单体内置对象之Math常用方法(min,max,ceil,floor,round,random等)
1.min()和max()方法
Math.min()用于确定一组数值中的最小值。Math.max()用于确定一组数值中的最大值。
alert(Math.min(2,4,3,6,3,8,0,1,3)); //最小值 alert(Math.max(4,7,8,3,1,9,6,0,3,2)); //最大值
2.舍入方法
Math.ceil()执行向上舍入,即它总是将数值向上舍入为最接近的整数;
Math.floor()执行向下舍入,即它总是将数值向下舍入为最接近的整数;
Math.round()执行标准舍入,即它总是将数值四舍五入为最接近的整数;
例如:
alert(Math.ceil(25.9)); //
alert(Math.ceil(25.5)); //
alert(Math.ceil(25.1)); // alert(Math.floor(25.9)); //
alert(Math.floor(25.5)); //
alert(Math.floor(25.1)); // alert(Math.round(25.9)); //
alert(Math.round(25.5)); //
alert(Math.round(25.1)); //
3.random()方法
Math.random()方法返回介于0到1之间一个随机数,不包括0和1。如果想大于这个范围的话,可以套用一下公式:
值 = Math.floor(Math.random() * 总数 + 第一个值)
例如:
alert(Math.floor(Math.random() * 10 + 1)); //随机产生1-10之间的任意数
for (var i = 0; i<10;i ++) {
document.write(Math.floor(Math.random() * 10 + 5)); //5-14之间的任意数
document.write('<br />');
}
为了更加方便的传递想要范围,可以写成函数:
function selectFrom(lower, upper) {
var sum = upper - lower + 1; //总数-第一个数+1
return Math.floor(Math.random() * sum + lower);
}
for (var i=0 ;i<10;i++) {
document.write(selectFrom(5,10)); //直接传递范围即可
document.write('<br />');
}
4.其它方法
Math.sqrt()计算数的平方根
定义:sqrt() 方法可返回一个数的平方根。
语法:Math.sqrt(x)。其中x必需。必须是大于等于 0 的数。
返回值:参数 x 的平方根。如果 x 小于 0,则返回 NaN。
实例:
var a=Math.sqrt(0); //0
var b=Math.sqrt(1); //1
var c=Math.sqrt(9); //3
var d=Math.sqrt(0.64); //0.8
var e=Math.sqrt(-9); //NAN
如下表格:
|
方 法 |
说 明 |
|
Math.abs(num) |
返回num的绝对值 |
|
Math.exp(num) |
返回Math.E的num次幂 |
|
Math.log(num) |
返回num的自然对数 |
|
Math.pow(num,power) |
返回num的power次幂 |
|
Math.sqrt(num) |
返回num的平方根 |
|
Math.acos(x) |
返回x的反余弦值 |
|
Math.asin(x) |
返回x的反正弦值 |
|
Math.atan(x) |
返回x的反正切值 |
|
Math.atan2(y,x) |
返回y/x的反正切值 |
|
Math.cos(x) |
返回x的余弦值 |
|
Math.sin(x) |
返回x的正弦值 |
|
Math.tan(x) |
返回x的正切值 |
JS单体内置对象之Math常用方法(min,max,ceil,floor,round,random等)的更多相关文章
- js单体内置对象
js单体内置对象:js的内置对象,是ECMAScritp提供的.不依赖于宿主环境的对象,我的理解就是在我们开发之前js里面就已经存在的对象.单体内置对象就是是不需要通过new来实例化的,例如我们的st ...
- JS 单体内置对象
内置对象: 由ECMAScript提供的.不依赖于宿主环境的对象,这些对象在ECMAScript程序执行之前就已经存在了. 不必由开发人员显式地实例化内置对象 比如: Object Array Str ...
- Math对象(min()-max()-ceil()-floor()-round()和abs())
1.Math.min() 功能:求一组数的最小值,返回值:Number 如果里面有非数字则返回NaN 2.Math.max() 功能:求一组数的最大值,返回值:Number 3.Math.ceil() ...
- Javascript高级编程学习笔记(18)—— 引用类型(7)单体内置对象
什么是内置对象呢? js高级程序设计中给出的定义为:由ES规定不依赖于宿主环境的对象,这些对象在JS执行前就已经存在 前面我们介绍的引用类型都是内置对象 除了这些对象外ECMA还规定了两个单体内置对象 ...
- JavaScript高级编程———基本包装类型String和单体内置对象Math
JavaScript高级编程———基本包装类型和单体内置对象 <script> var stringObject = new String("hello world") ...
- JS基础-内置对象【字符串+Date+Math】
JS内置对象[字符串] // charAt() 返回字符 // charCodeAt() 返回字符的unicode编码 var str="hello world"; console ...
- 单体内置对象 Global 和 Math
单体内置对象 Global 和 Math 在所有代码执行前,作用域中就已经存在两个内置对象:Global(全局)和Math.在大多数ES实现中都不能直接访问Global对象.不过,WEB浏览器实现了承 ...
- RegExp类型,单体内置对象
1.RegExp类型: 1)什么是正则表达式:RegExp --是一种规则,模式 --强大的字符串匹配工具 --创建: --使用RegExp构造函数创建:var re=new ...
- DOM笔记(九):引用类型、基本包装类型和单体内置对象
一.Array 1 .创建数组的方式 //Array构造函数(可以去掉new) var colors0 = new Array(); var colors1 = new Array(20); var ...
随机推荐
- 小奶狗给小喵咪上CSS课程
小奶狗给小喵咪上CSS课程 小奶狗,你好啊? 小喵咪你好~ 听说学习HTML,要学习CSS是吗? 是的,小甜心~ 那么CSS是什么呢? CSS是Cascading Style Sheet英文的缩写,中 ...
- 把ajax包装成promise的形式(3)
概述 为了体验promise的原理,我打算自己把ajax包装成promise的形式.主要希望实现下列功能: // 1.使用success和error进行链式调用,并且可以在后面加上无限个 promis ...
- Ubuntu 16.04 系统无法挂载u盘的问题
Ubuntu系统无法挂载U盘设备,提示错误为:mount:未知文件系统类型“exfat”.这是因为Ubuntu默认情况下是不允许挂载U盘的,想在Ubuntu系统下挂载U盘,就要用下面的方法了. sud ...
- 安卓Listview和Adapter数据设计
ListView是一种用于垂直显示的列表控件,如果显示内容过多,则会自动出现垂直滚动条,每一行是一个View对象,在每一行上可以放置任何组件,Adapter适配器是数据和UI的桥梁,为数据显示提供了统 ...
- python基础-字符串(6)
一.引言 当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则 ...
- php内核之HashTable
Zend 把与 HashTable 有关的 API 分成了好几类以便于我们查找,这些 API 的返回值大多都是常量SUCCESS 或者 FAILURE. 初始化 HashTable 下面在介绍函数原型 ...
- linux 清空历史命令
系统版本:CentOS 6 history -c 命令可以清空当前窗口的历史输出命令. 要彻底删除历史命令可以有如下几种方式: 在当前用户的-目录下执行: 方式1: echo > .bash_h ...
- 导入项目报错【Minimum supported Gradle version is 3.3. Current version is 2.14.1】
问题描述 导入项目的时候,因为同事的开发环境是Android Studio 2.3.2 Gradle3.3.而我的开发环境是Android Studio 2.2.2 Gradle2.14.1. 所以 ...
- 输入一个URL之后发生了什么?
简明扼要地说: DNS解析 TCP“三次握手”来建立连接 发送HTTP请求 服务器处理请求并返回HTTP报文 TCP“四次挥手”来关闭连接 客户端拿到资源并解析渲染页面
- 【InfluxDB】InfluxDB学习实践笔记
InfluxDB是用Go编写的一个开源分布式时序.事件和指标数据库,无需外部依赖.它与Elasticsearch.Graphite等类似.比较适用于与事件紧密相关的数据,例如实时日志数据.实时监控数据 ...