JavaScript Math(算数) 对象的用法详解

Math(算数)对象的作用是:执行常见的算数任务。

JavaScript 的 Math 对象提供了一些用于数学运算的方法和常量。以下是一些常用的 Math 对象的方法和属性,接下来一个一个详解。

1:Math.PI:获取圆周率的常量。(下面的写法,只能保留小数点后15位)

typescript 复制代码
var num = Math.PI;
console.log("num的值为:" + num);//num的值为:3.141592653589793

1*:保留小数点后20位的写法,以此类推,选择自己所需写法

typescript 复制代码
// 将 Math.PI 转换为字符串,保留20位小数
var piString = Math.PI.toFixed(20);
// 将字符串转换回数字
var piNumber = parseFloat(piString);
console.log(piNumber); // 输出保留小数点后20位的 PI 值,部分编译器还是会省略只到15位,看字符串即可

2:Math.abs(x):返回 x 的绝对值。

typescript 复制代码
var num = Math.abs(-100)
console.log("num的值为:" + num);//num的值为:100

3:Math.ceil(x):返回大于等于 x 的最小整数,即向上取整。

typescript 复制代码
var num = Math.ceil(100.10)
console.log("num的值为:" + num);//num的值为:101

4:Math.floor(x):返回小于等于 x 的最大整数,即向下取整。

typescript 复制代码
var num = Math.floor(100.10)
console.log("num的值为:" + num);//num的值为:100

5:Math.round(x):四舍五入到最接近的整数。

typescript 复制代码
var num = Math.round(100.50)
console.log("num的值为:" + num);//num的值为:101

var num = Math.round(100.49)
console.log("num的值为:" + num);//num的值为:100

6:Math.max(arr):返回列表中的最大值。注意arr需为数值或数值组成的字符串,否则返回NaN

typescript 复制代码
var num = Math.max(100,49,99)
console.log("num的值为:" + num);//num的值为:100

var num = Math.max(100,49,"999")
console.log("num的值为:" + num);//num的值为:999

var num = Math.max(100,49,"999asdasd")
console.log("num的值为:" + num);//num的值为:NaN

7:Math.min(arr):返回列表中的最小值。注意arr需为数值或数值组成的字符串,否则返回NaN

typescript 复制代码
var num = Math.min(100,49,99)
console.log("num的值为:" + num);//num的值为:49

var num = Math.min(100,49,"999")
console.log("num的值为:" + num);//num的值为:49


var num = Math.min(100,49,"999asdasd")
console.log("num的值为:" + num);//num的值为:NaN

8:Math.random():返回一个介于 0(包括)和 1(不包括)之间的随机数。

typescript 复制代码
var num = Math.random()
console.log("num的值为:" + num);//num的值为0到1之间的整数

8*:返回一个介于 0(包括)和 10(不包括)之间的随机数

typescript 复制代码
var num = Math.floor(Math.random()*10)
console.log("num的值为:" + num);//num的值为0到10之间的整数
相关推荐
HUST3 分钟前
C 语言 第七讲:数组和函数实践:扫雷游戏
c语言·开发语言·数据结构·vscode·算法·游戏·c#
oioihoii3 分钟前
C++高并发编程核心技能解析
开发语言·c++
jimy17 分钟前
程序崩溃free(): double free detected in tcache 2
linux·开发语言·数据结构·链表
秋邱11 分钟前
Java面向对象进阶:封装、继承、多态的实现逻辑与实战案例
java·开发语言·后端·spring cloud·ar·restful
colman wang17 分钟前
Java期末
java·开发语言
千里马-horse18 分钟前
AsyncContext
开发语言·前端·javascript·c++·napi·asynccontext
Coder_Boy_19 分钟前
基于MQ实现秒杀订单系统的异步化架构
java·开发语言·架构
勇往直前plus20 分钟前
Jackson 反序列化首字母大写字段映射失败的底层原因与解决方案
java·开发语言·前端
转转技术团队20 分钟前
基于微前端 qiankun 多实例保活的工程实践
前端·javascript·前端工程化