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之间的整数
相关推荐
烛阴8 分钟前
void 0 的奥秘:解锁 JavaScript 中 undefined 的正确打开方式
前端·javascript
nananaij25 分钟前
【Python进阶篇 面向对象程序设计(3) 继承】
开发语言·python·神经网络·pycharm
初遇你时动了情25 分钟前
腾讯地图 vue3 使用 封装 地图组件
javascript·vue.js·腾讯地图
dssxyz29 分钟前
uniapp打包微信小程序主包过大问题_uniapp 微信小程序时主包太大和vendor.js过大
javascript·微信小程序·uni-app
阿蒙Amon35 分钟前
为什么 12 版仍封神?《C# 高级编程》:从.NET 5 到实战架构,进阶者绕不开的必修课
开发语言·c#
无小道37 分钟前
c++-引用(包括完美转发,移动构造,万能引用)
c语言·开发语言·汇编·c++
爱莉希雅&&&1 小时前
技术面试题,HR面试题
开发语言·学习·面试
开开心心_Every2 小时前
便捷的Office批量转PDF工具
开发语言·人工智能·r语言·pdf·c#·音视频·symfony
ohMyGod_1233 小时前
React16,17,18,19新特性更新对比
前端·javascript·react.js
@大迁世界3 小时前
第1章 React组件开发基础
前端·javascript·react.js·前端框架·ecmascript