Math常用方法

简介: Math常用方法我们知道在js中有很多的内置对象,使用这些对象可以极大的提高我们的工作效率。这里我们讲讲在实际开发中用的比较多的Math对象。Math对象

Math常用方法

我们知道在js中有很多的内置对象,使用这些对象可以极大的提高我们的工作效率。

这里我们讲讲在实际开发中用的比较多的Math对象。

Math对象

math对象与其他的对象不同,他不是一个构造函数,不需要创建对象,所以我们就不需要使用new关键字来创建对象,我们可以直接使用里面的属性和方法。

下面列出一些常用的属性方法:

方法 描述 备注
Math,PI 圆周率 Math对象属性
Math.abs() 返回绝对值
Math.random() 生成0-1之间的随机浮点数 [0,1)
Math.floor() 向下取整
Math.ceil() 向上取整
Math.round() 四舍五入(正数:四舍五入;负数:五舍六入)
Math.max() 返回多个数中最大值
Math.min() 返回多个数中最小值
Math.pow(x,y) 返回x的y次幂
Math.sqrt() 开方运算

下面我们进行详细介绍:

Math.PI

用于获取圆周率

var pi = Math.PI;
console.log(pi);// 3.141592653589793
复制代码

这个属性直接返回圆周率,我们可以直接使用。

Math.abs()

用于获取绝对值

var num = -10;
console.log(Math.abs(num));// 10
复制代码

这个属性传入一个参数,并且返回这个参数的绝对值。

Math.random()

用于获取随机数,这个随机数应用很广,需要加强记忆

var num = Math.random();
复制代码

这个属性返回一个0-1之间的随机浮点数,不包括1。

生成[0,x)之间的随机数:

Math.round(Math.random()*x);
复制代码

生成[x,y)之间的随机数:

Math.random()*(y-x)+x;
复制代码

重要应用:

生成指定范围[x,y]内的随机整数:

function getRandom(min,max){
    return Math.floor(Math.random()*(max-min+1)+min);
}
console.log(getRandom(1,10));// 1-10之间的随机整数
复制代码

Math.floor & Math.ceil()

用于取整:

let value1 = Math.floor(x);//向下取整
let value2 = Math.ceil(x);// 向上取整
复制代码

当我们需要对某个数值取整的时候,我们可以通过这两个方法来决定是向上还是向下取整。

let down = Math.floor(3.5);
let up = Math.ceil(3.5);
console.log(down);// 3
console.log(up);// 4
复制代码

Math.max() & Math.min()

在实际开发中,我们有时候需要获取多个值之间的最大值或者最小值。

如果没有这个方法,我们需要一个一个去比较,有个这个方法之后,我们直接调用这个方法,传入我们的参数就可以直接返回我们想要的值。

Math.max(x,y,z...);// 返回最大值
Math.min(x,y,z...);// 返回最小值
复制代码

注意:

这里传入的参数只能是数值形式,若是其他形式,比如数组之类的,我们要先将其转换。

pow()

Math.pow(a,b);
复制代码

最后返回的结果是a的b次方

栗子:

let a = Math.pow(2,3);
console.log(a);// 8
复制代码

sqrt()

Math.sqrt(a);
复制代码

返回的结果为a的开二次方。

栗子:

var a = Math.sqrt(4);
console.log(a);// 2


相关文章
|
JavaScript 物联网 5G
物联网设备连接的下一个引爆点:4G Cat.1
物联网从概念兴起至今已经过了好几些年了。何为物联网,首先要定义何为“物”(Things),笔者理解所有具备连接能力的设备都可以是物,比如一个手环,一个WiFi台灯,或者NB-IoT水表等。
物联网设备连接的下一个引爆点:4G Cat.1
|
6月前
|
存储 C语言
`scanf`是C语言中用于按格式读取标准输入的函数
`scanf`是C语言中用于按格式读取标准输入的函数,通过格式字符串解析输入并存入指定变量。需注意输入格式严格匹配,并建议检查返回值以确保读取成功,提升程序健壮性。
1175 0
|
5月前
|
人工智能 数据可视化 数据挖掘
一个悄然崛起的国产软件,AiPy已开源
当前AI大模型虽智能飙升,却难落地日常。AiPy另辟蹊径,为LLM接上“手脚”,打通Python执行环境,让其真正自动分析数据、生成图表、完成任务,实现从“思考”到“行动”的闭环,被誉为“中国版Manus”,获1.9k星好评。
|
9月前
|
人工智能 缓存 自然语言处理
别再手搓测试数据了!AE测试数据智造系统揭秘
本文介绍如何通过构建基于大语言模型的测试数据智造Agent,解决AliExpress跨境电商测试中数据构造复杂、低效的问题,推动测试效率提升与智能化转型。
别再手搓测试数据了!AE测试数据智造系统揭秘
|
DataWorks API 数据库
DataWorks操作报错合集之在使用 OceanBase (OB) 作为数据源进行数据集成时遇到报错,该如何排查
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
存储 缓存 算法
【C语言】内存管理函数详细讲解
在C语言编程中,内存管理是至关重要的。动态内存分配函数允许程序在运行时请求和释放内存,这对于处理不确定大小的数据结构至关重要。以下是C语言内存管理函数的详细讲解,包括每个函数的功能、标准格式、示例代码、代码解释及其输出。
510 6
|
存储 并行计算 算法
R语言性能优化:提升代码运行速度的技巧
【8月更文挑战第28天】R语言的性能优化是一个复杂而细致的过程,需要综合考虑数据结构、算法、并行计算、编译以及内存管理等多个方面。通过应用上述技巧,你可以在不牺牲代码可读性和灵活性的前提下,显著提高R代码的执行效率。记住,优化是一个迭代的过程,需要不断地测试、分析和调整你的代码。
1187 6
|
存储 Linux 数据中心
docker的底层原理四: 资源隔离
本文详细解释了Docker利用Linux内核的Namespace和Cgroups技术实现资源隔离,包括CPU、内存、网络、存储、文件系统、进程间通信、用户和用户组以及进程ID和主机名的隔离,确保容器的独立性和系统的安全性。
940 0
|
IDE 数据可视化 Java
查看Java字节码内容的几种方式
查看Java字节码内容的几种方式
541 152
|
Kubernetes 网络协议 算法
k8s的 Nginx Ingress 调优
k8s的 Nginx Ingress 调优
k8s的 Nginx Ingress 调优