掌握 JavaScript 的数学对象:内置数学函数和属性的综合指南

掌握 javascript 的数学对象:内置数学函数和属性的综合指南

javascript 数学对象:概述

javascript math 对象是一个内置对象,提供数学函数和常量的集合。它不是构造函数,因此您无法创建它的实例;相反,它是通过其静态方法和属性直接使用的。

1.常数

math 对象包含几个对数学计算有用的常量:

math.e:自然对数的底数,约等于 2.718。math.ln2:2的自然对数,约等于0.693。math.ln10:10 的自然对数,约等于 2.303。math.log2e:e 的以 2 为底的对数,约等于 1.442。math.log10e:e 以 10 为底的对数,约等于 0.434。math.pi:圆的周长与其直径的比值,约等于 3.14159。math.sqrt1_2:1/2 的平方根,约等于 0.707。math.sqrt2:2 的平方根,约等于 1.414。

2.方法

math 对象提供了多种执行数学运算的方法:

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

  math.abs(-5); // 5

math.ceil(x):将 x 向上舍入到最接近的整数。

  math.ceil(4.2); // 5

math.floor(x):将 x 向下舍入到最接近的整数。

  math.floor(4.7); // 4

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

  math.round(4.5); // 5

math.max(…values):返回零个或多个数字中的最大值。

  math.max(1, 5, 3); // 5

math.min(…values):返回零个或多个数字中的最小值。

  math.min(1, 5, 3); // 1

math.random():返回 0(含)和 1(不包括)之间的伪随机数。

  math.random(); // e.g., 0.237

math.pow(base, exponent):返回底数的指数次幂。

  math.pow(2, 3); // 8

math.sqrt(x):返回 x 的平方根。

  math.sqrt(9); // 3

math.trunc(x):返回 x 的整数部分,删除任何小数位。

  math.trunc(4.9); // 4

3.用法示例

以下是一些如何使用 math 对象的实际示例:

立即学习“Java免费学习笔记(深入)”;

生成随机整数

  function getrandomint(min, max) {    return math.floor(math.random() * (max - min + 1)) + min;  }  console.log(getrandomint(1, 10)); // e.g., 7

计算斜边

  function calculatehypotenuse(a, b) {    return math.sqrt(math.pow(a, 2) + math.pow(b, 2));  }  console.log(calculatehypotenuse(3, 4)); // 5

4.限制和注意事项

精度问题:浮点运算可能会导致精度问题。例如,由于舍入误差,math.sqrt(2) * math.sqrt(2) 可能不完全等于 2。不是构造函数:math 对象没有构造函数功能。所有属性和方法都是静态的。

数学对象方法和属性

1. math.abs(x)

返回 x 的绝对值。

console.log(math.abs(-10)); // 10console.log(math.abs(5.5)); // 5.5

2. math.acos(x)

返回 x 的反余弦(反余弦),以弧度表示。

console.log(math.acos(1)); // 0console.log(math.acos(0)); // 1.5707963267948966 (π/2)

3. math.acosh(x)

返回 x 的双曲反余弦。

console.log(math.acosh(1)); // 0console.log(math.acosh(2)); // 1.3169578969248166

4. math.asin(x)

返回 x 的反正弦(反正弦),以弧度表示。

console.log(math.asin(0)); // 0console.log(math.asin(1)); // 1.5707963267948966 (π/2)

5. math.asinh(x)

返回 x 的双曲反正弦。

console.log(math.asinh(0)); // 0console.log(math.asinh(1)); // 0.881373587019543

6. math.atan(x)

返回 x 的反正切(反正切),以弧度表示。

console.log(math.atan(1)); // 0.7853981633974483 (π/4)console.log(math.atan(0)); // 0

7. math.atan2(y, x)

返回其参数商的反正切值,以弧度表示。

console.log(math.atan2(1, 1)); // 0.7853981633974483 (π/4)console.log(math.atan2(-1, -1)); // -2.356194490192345 (-3π/4)

8. math.atanh(x)

返回 x 的双曲反正切值。

console.log(math.atanh(0)); // 0console.log(math.atanh(0.5)); // 0.5493061443340549

9. math.cbrt(x)

返回 x 的立方根。

console.log(math.cbrt(27)); // 3console.log(math.cbrt(-8)); // -2

10。 math.ceil(x)

将 x 向上舍入到最接近的整数。

console.log(math.ceil(4.2)); // 5console.log(math.ceil(-4.7)); // -4

11。 math.clz32(x)

返回 x 的 32 位二进制表示形式中前导零的数量。

console.log(math.clz32(1)); // 31console.log(math.clz32(0x80000000)); // 0

12。数学.cos(x)

返回 x 的余弦(其中 x 的单位是弧度)。

console.log(math.cos(0)); // 1console.log(math.cos(math.pi)); // -1

13。 math.cosh(x)

返回 x 的双曲余弦。

console.log(math.cosh(0)); // 1console.log(math.cosh(1)); // 1.5430806348152437

14。数学.e

返回欧拉数,大约为 2.718。

console.log(math.e); // 2.718281828459045

15。 math.exp(x)

返回 e 的 x 次方的值。

console.log(math.exp(1)); // 2.718281828459045console.log(math.exp(0)); // 1

16。 math.expm1(x)

返回 e 的 x 次方减去 1 的值。

console.log(math.expm1(1)); // 1.718281828459045console.log(math.expm1(0)); // 0

17。 math.floor(x)

将 x 向下舍入到最接近的整数。

console.log(math.floor(4.7)); // 4console.log(math.floor(-4.2)); // -5

18。 math.fround(x)

返回 x 的最接近的(32 位单精度)浮点表示形式。

console.log(math.fround(1.337)); // 1.336914console.log(math.fround(1.5)); // 1.5

19。数学.ln2

返回 2 的自然对数,大约为 0.693。

console.log(math.ln2); // 0.6931471805599453

20。数学.ln10

返回 10 的自然对数,大约为 2.302。

console.log(math.ln10); // 2.302585092994046

21。 math.log(x)

返回 x 的自然对数(以 e 为底)。

console.log(math.log(math.e)); // 1console.log(math.log(10)); // 2.302585092994046

22。 math.log10(x)

返回 x 以 10 为底的对数。

console.log(math.log10(10)); // 1console.log(math.log10(100)); // 2

23。数学.log10e

返回 e 以 10 为底的对数,大约为 0.434。

console.log(math.log10e); // 0.4342944819032518

24。 math.log1p(x)

返回 1 + x 的自然对数。

console.log(math.log1p(1)); // 0.6931471805599453console.log(math.log1p(0)); // 0

25。 math.log2(x)

返回 x 以 2 为底的对数。

console.log(math.log2(2)); // 1console.log(math.log2(8)); // 3

26。数学.log2e

返回 e 以 2 为底的对数,大约为 1.442。

console.log(math.log2e); // 1.4426950408889634

27。 math.max(…值)

返回零个或多个数字中最大的一个。

console.log(math.max(1, 5, 3)); // 5console.log(math.max(-1, -5, -3)); // -1

28。 math.min(…值)

返回零个或多个数字中最小的一个。

console.log(math.min(1, 5, 3)); // 1console.log(math.min(-1, -5, -3)); // -5

29。数学.pi

返回 π 的值,大约为 3.14159。

console.log(math.pi); // 3.141592653589793

30。 math.pow(底数, 指数)

返回底数的指数次方的值。

console.log(math.pow(2, 3)); // 8console.log(math.pow(5, 0)); // 1

31。 math.random()

返回 0(含)和 1(不包括)之间的伪随机数。

console.log(math.random()); // e.g., 0.237

32。 math.round(x)

将 x 舍入到最接近的整数。

console.log(math.round(4.5)); // 5console.log(math.round(4.4)); // 4

33。 math.sign(x)

返回数字的符号,指示该数字是正数、负数还是零。

console.log(math.sign(-5)); // -1console.log(math.sign(0)); // 0console.log(math.sign(5)); // 1

34。数学.sin(x)

返回 x 的正弦值(其中 x 的单位是弧度)。

console.log(math.sin(0)); // 0console.log(math.sin(math.pi / 2)); // 1

35。 math.sinh(x)

返回 x 的双曲正弦值。

console.log(math.sinh(0)); // 0console.log(math.sinh(1)); // 1.1752011936438014

36。 math.sqrt(x)

返回 x 的平方根。

console.log(math.sqrt(9)); // 3console.log(math.sqrt(16)); // 4

37。数学.sqrt1_2

返回 1/2 的平方根,大约为 0.707。

console.log(math.sqrt1_2); // 0.7071067811865476

38。数学.sqrt2

返回 2 的平方根,大约为 1.414。

console.log(math.sqrt2); // 1.4142135623730951

39。 math.tan(x)

返回 x 的正切值(其中 x 的单位是弧度)。

console.log(math.tan(0)); // 0console.log(math.tan(math.pi / 4)); // 1

40。 math.tanh(x)

返回 x 的双曲正切。

console.log(math.tanh(0)); // 0console.log(math.tanh(1)); // 0.7615941559557649

41。 math.trunc(x)

通过删除任何小数位来返回数字的整数部分。

console.log(Math.trunc(4.9)); // 4console.log(Math.trunc(-4.9)); // -4

以上就是掌握 JavaScript 的数学对象:内置数学函数和属性的综合指南的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1491259.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
什么是打字稿?
上一篇 2025年12月19日 13:48:37
高级 GraphQL 查询和突变
下一篇 2025年12月19日 13:48:41

相关推荐

  • win10远程桌面黑屏怎么修复

    当我们使用win10电脑进行远程连接时,有时会出现黑屏的情况,这会严重影响正常的远程操作。那么,win10远程桌面出现黑屏该如何修复呢?接下来,本文将为大家介绍几种解决win10远程桌面黑屏问题的方法,有需要的朋友不妨尝试一下。 win10远程桌面黑屏的修复方法一 按下Ctrl+Shift+Esc组…

    2026年9月5日
    100
  • Word文档插入特殊符号怎么做_Word文档插入特殊符号如何做详细方法

    插入特殊符号可通过“插入”选项卡中的“符号”功能直接选择,或使用Alt+小键盘快捷键输入©®™°等;中文输入法支持拼音联想如“banquan”选©;还可设置自动更正规则实现(c)自动替换为©,提升文档编辑效率。 在Word文档中插入特殊符号非常实用,尤其在撰写论文、报告或需要标注版权、注册商标等信息…

    2026年9月5日
    000
  • VSCode怎么跳转到方法_VSCode代码导航与函数定义跳转教程

    最直接的跳转方式是F12或Ctrl+点击,依赖语言服务器实现,若失灵需检查配置、扩展或项目文件,结合Peek Definition、Find All References等命令可提升导航效率。 VSCode中要跳转到方法定义,最直接、最常用的方式就是使用 Go to Definition 功能,通常…

    2026年9月5日
    000
  • 搜狗手机浏览器怎么全屏 搜狗手机浏览器全屏方法

    打开搜狗浏览器。 打开搜狗浏览器。 也可以直接使用全屏显示快捷键F11,来设置全屏显示。 以上就是搜狗手机浏览器怎么全屏 搜狗手机浏览器全屏方法的详细内容,更多请关注创想鸟其它相关文章!

    2026年9月5日
    100
  • linux下安装QT5:error: unrecognized command line option ‘-fuse-ld=gold’

    安装qt时在执行./configure时报错:error: unrecognized command line option ‘-fuse-ld=gold’ 这个错误是qt的一个bug。 在装有gold linker的系统里,编译脚本会加入-fuse-ld=gold选项,但这个选项gcc是不支持的。…

    用户投稿 2026年9月5日
    000
  • oppo手机密码忘记了怎么办?解锁方法大揭秘!

    标题:“oppo手机密码忘记了怎么办?解锁方法大揭秘!” 近年来,智能手机已经成为人们生活中不可或缺的一部分。人们通过智能手机进行通讯、社交、工作等各种活动,手机中存储着大量的个人隐私信息。正因为如此,手机的安全性显得尤为重要。然而,有时候我们不可避免会遇到忘记手机密码的情况,尤其是OPPO手机用户…

    用户投稿 2026年9月5日
    200
  • 狼狗广播剧全集免费在线收听与下载方法他来啦!

    近期,广播剧领域热度不断攀升,《猎影》以其独特的感情张力快速成为备受瞩目的佳作。这部以娱乐圈为背景的广播剧,深入刻画了秦子谦与秦子轩这对兄弟在人性与欲望交织中的内心斗争,配音演员们富有层次感的声音表演使得人物之间的冲突更加引人入胜。 完整资源获取通道:《猎影》广播剧全集免费在线试听 对于喜爱高质量广…

    2026年9月5日
    000
  • 如何优化质数判断代码以降低内存占用?

    高效寻找第n个质数:内存优化策略 寻找第n个质数的算法通常涉及大量数字的质数判定,直接使用嵌套循环的朴素方法会导致内存占用过高。本文介绍一种基于埃拉托斯特尼筛法的优化方法,有效降低内存消耗。 埃拉托斯特尼筛法是一种高效的质数筛选算法。它首先创建一个布尔数组,初始时所有元素都标记为质数(true)。然…

    2026年9月5日
    000
  • Swoole如何使用协程实现高并发swoole_memcached_server

    swoole是一个基于php语言的协程框架,其提供了一个高效的服务端开发框架。在swoole中,我们可以通过使用协程来实现高并发的服务器,而在本文中,我们将讨论如何使用协程来实现一个高并发的swoole_memcached_server。 什么是swoole_memcached_server? 首先…

    用户投稿 2026年9月5日
    000
  • 微博被恶意举报了怎么办_微博恶意举报处理方法

    遭遇恶意举报后应立即申诉并提交证据,通过客服渠道澄清内容合规;随后开启互动防火墙、限制非粉丝互动以降低风险;若涉及人身攻击或重大损失,需取证并依法向12377举报或提起诉讼维权。 如果您在使用微博时发现自己的内容被他人集中、大量地恶意举报,导致账号功能受限或内容被错误删除,这可能是遭遇了针对性的网络…

    2026年9月5日
    000
  • Win10系统如何设置定时更换电脑密码

    许多人在使用电脑时,为了避免他人随意操作自己的设备或出于其他考虑,通常会选择为电脑设置密码保护。然而,一旦密码达到设定的有效期,系统往往会自动对密码进行更新。尽管这一功能有助于提升电脑的安全性,但有些用户可能会好奇:是否可以自行安排密码的定期更换,并且该如何具体操作呢?下面这篇文章就将详细介绍如何在…

    2026年9月5日
    000
  • 美媒初体验DeepSeek:厉害,这项能力是ChatGPT的两倍

    ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 近日,DeepSeek在美国科技圈引发热议。《纽约时报》科技记者对DeepSeek进行了深入体验,并将其与ChatGPT和Claude进行了对比评测。评测结果显示,DeepSeek在某些方面展现…

    2026年9月5日
    500
  • 鬼谷子连招秘籍:王者荣耀辅助霸主实战全解析

    在王者峡谷的辅助世界里,鬼谷子无疑是闪耀的一颗明星!凭借其神秘莫测的突袭能力和震撼全场的群体控制,稳居t0级别的地位。若想成为引领战场节奏的顶尖辅助,精通鬼谷子的精髓连招便是你的制胜法宝! 一、核心玩法:掌控节奏的艺术 鬼谷子并非传统的硬辅,而是峡谷中的“节奏操控者”!其核心在于利用独特的群体隐身技…

    2026年9月5日
    100
  • 《三国志・战略版》团队新作《信长之野望 真战》台湾代理权确定 首次测试即将开启

    《三国志・战略版》团队新作《信长之野望 真战》台湾代理权确定 首次测试即将开启《三国志・战略版》团队新作《信长之野望 真战》台湾代理权确定 首次测试即将开启《三国志・战略版》团队新作《信长之野望 真战》台湾代理权确定 首次测试即将开启《三国志・战略版》团队新作《信长之野望 真战》台湾代理权确定 首次测试即将开启

    青鸟互娱有限公司正式宣布,成功取得日本光荣特库摩旗下正版授权策略手游《信长之野望 真战》在台湾地区双平台的独家代理权。同时,游戏即将开启首次 cbt 删档测试。官方透露,本作由《三国志・战略版》原班开发团队倾心打造,并计划于2025年内正式上线。为了给策略类游戏玩家带来更高品质与更佳体验,青鸟互娱与…

    2026年9月5日 用户投稿
    000
  • ai格式怎么转换成pdf格式(手机打开ai格式的软件讲解)

    php小编新一为您介绍如何将ai格式文件转换为pdf格式,方便在手机上打开。ai格式文件通常是adobe illustrator软件创建的矢量图形文件,而pdf格式是一种通用的文档格式,适用于各种设备查看。通过简单的步骤和特定的应用程序,您可以轻松将ai文件转换为pdf格式,让您随时随地查看和分享您…

    2026年9月5日
    000
  • 夸克App热搜榜全新上线“短剧榜” 小时级更新打造信息服务新体验

    夸克App热搜榜全新上线“短剧榜” 小时级更新打造信息服务新体验夸克App热搜榜全新上线“短剧榜” 小时级更新打造信息服务新体验夸克App热搜榜全新上线“短剧榜” 小时级更新打造信息服务新体验夸克App热搜榜全新上线“短剧榜” 小时级更新打造信息服务新体验

    铺垫少、反转多、爽点密集、剧情猎奇…越来越多年轻人开始对短剧上头。日前,夸克app热搜榜全新上线“短剧榜”,根据用户搜索行为小时级更新热门短剧排行,客观呈现全网短剧热度与受众喜好。 记者体验发现,在夸克App搜索框直接搜索“短剧”,即可进入夸克短剧热搜榜,榜单包含了全网热门短剧排名、精品好剧推荐等多…

    2026年9月5日 用户投稿
    300
  • 如何利用Swoole实现高性能的网关服务

    随着互联网的迅速发展和用户数量的爆发式增长,网关服务的重要性也日益凸显。传统的网关服务在应对大量用户的同时,往往会面临性能瓶颈,严重影响系统的响应速度和稳定性。而基于swoole的高性能网关服务可以有效解决这一问题,让网站的访问速度和用户体验得到大幅度提升。 那么,什么是Swoole呢?Swoole…

    用户投稿 2026年9月5日
    400
  • 百度地图怎么设置回家最快路线_百度地图回家路线快速设置方法

    首先设置家的常用地址,进入百度地图个人中心添加家庭住址为“家”;然后配置路线偏好,在导航设置中选择“时间优先”模式以获取最快路线;最后创建桌面快捷方式,从常用地址中为“家”添加桌面图标并选择交通方式,实现一键导航回家。 如果您在使用百度地图时希望快速获取回家的最佳路线,可以通过设置常用地址和导航偏好…

    2026年9月5日
    000
  • Linux讲解之定时任务

    本文目录: 12.1 配置定时任务 12.2 crontab file 12.3 crond命令的调试 12.4 精确到秒的任务计划 12.1 配置定时任务 首先需弄清的概念: (1).crond是一个daemon类程序,路径为/usr/sbin/crond。默认会以后台方式启动,service或s…

    用户投稿 2026年9月5日
    000
  • Spring框架究竟指什么?

    Spring框架究竟是什么? 许多开发者在谈论Spring时,可能会对其具体含义感到模糊。 明确答案:Spring Framework 我们日常所说的Spring框架,其正式名称是Spring Framework。它是一个功能强大的Java应用程序开发组件集合,提供构建各种应用的基础架构,涵盖依赖注…

    2026年9月5日
    000

发表回复

登录后才能评论
关注微信