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之间的整数
相关推荐
lemon_sjdk11 分钟前
DOM 节点
java·前端·javascript
leoZ23135 分钟前
2026-09-09-springboot-cloud-deploy-pitfalls
java·前端·javascript·vue.js·人工智能·spring boot·后端
秦老师Q43 分钟前
php零基础入门到实战,从语法到框架,一篇搞定
开发语言·php
驭渊的小故事1 小时前
多线程02
java·开发语言·jvm
芭拉拉小魔仙1 小时前
Vue 2 门诊收费系统中的医保结算流程设计与实践
前端·javascript·vue.js
阿里嘎多学长1 小时前
2026-09-09 GitHub 热点项目精选
开发语言·程序员·github·代码托管
moonrailgun1 小时前
用 Node.js 复刻 Codex Astra 的终端星光
前端·javascript·算法
君顾12 小时前
本地折扣卡 CPS 平台搭建:从系统架构到落地实战
java·开发语言·折扣卡
默_笙2 小时前
💫 给金鱼建图书馆(下):Milvus 向量数据库,让 AI 拥有长期记忆
前端·javascript
liangshanbo12152 小时前
手写 Function.prototype.call 与 Function.prototype.apply 面试题满分答案
开发语言·javascript·原型模式