前端知识点---标准库之Math对象(Javascript)

文章目录

  • 01特点
  • 02常用 Math 属性
  • 03. 常用的 Math 方法
    • 3.1 四舍五入与取整
    • 3.2 基本数学运算
    • 3.3 随机数生成
    • 3.4 对数与指数
    • 3.5 三角函数
  • 04. Math 对象示例
    • 4.1 计算圆的面积
    • 4.2 生成 1 到 100 之间的随机整数
    • 4.3 使用三角函数计算斜边长度

01特点

静态对象:Math 是一个全局对象,不能作为构造函数来实例化。
直接使用:不需要创建实例,可以直接调用其方法或属性,例如 Math.PI 或 Math.sqrt()。

02常用 Math 属性

属性说明
Math.PI圆周率 π3.14159…
Math.E 自然对数的底数e2.718…
Math.LN22 的自然对数0.693…
Math.LN1010 的自然对数2.302…
Math.LOG2E以 2 为底的 e 的对数1.442…
Math.LOG10E以 10 为底的 e 的对数0.434…
Math.SQRT22 的平方根1.414…
Math.SQRT1_21/2 的平方根0.707…

03. 常用的 Math 方法

3.1 四舍五入与取整

方法描述示例
Math.round(x)四舍五入Math.round(1.5) → 2
Math.ceil(x)向上取整Math.ceil(1.2) → 2
Math.floor(x)向下取整Math.floor(1.8) → 1
Math.trunc(x)去掉小数部分(仅保留整数部分)Math.trunc(1.9) → 1

3.2 基本数学运算

方法描述示例
Math.abs(x)返回绝对值Math.abs(-5) → 5
Math.sqrt(x)返回平方根Math.sqrt(16) → 4
Math.cbrt(x)返回立方根Math.cbrt(27) → 3
Math.pow(x, y)返回 x 的 y 次幂Math.pow(2, 3) → 8
Math.max(…args)返回参数中的最大值Math.max(1, 5, 3) → 5
Math.min(…args)返回参数中的最小值Math.min(1, 5, 3) → 1

3.3 随机数生成

方法描述示例
Math.random()返回一个 0 到 1 之间的随机数(不包括 1)Math.random() → 0.6789

生成一定范围内的随机数:

// 生成 1 到 10 之间的随机整数
let randomNum = Math.floor(Math.random() * 10) + 1;

3.4 对数与指数

方法描述示例
Math.log(x)返回 x 的自然对数(以 e 为底)Math.log(Math.E) → 1
Math.log2(x)返回 x 的以 2 为底的对数Math.log2(8) → 3
Math.log10(x)返回 x 的以 10 为底的对数Math.log10(1000) → 3
Math.exp(x)返回 e 的 x 次幂Math.exp(1) → 2.718…

3.5 三角函数

方法描述示例
Math.sin(x)返回 x(弧度)的正弦值Math.sin(Math.PI / 2) → 1
Math.cos(x)返回 x(弧度)的余弦值Math.cos(0) → 1
Math.tan(x)返回 x(弧度)的正切值Math.tan(Math.PI / 4) → 1
Math.asin(x)返回 x 的反正弦值(结果是弧度)Math.asin(1) → π/2
Math.acos(x)返回 x 的反余弦值(结果是弧度)Math.acos(1) → 0
Math.atan(x)返回 x 的反正切值(结果是弧度)Math.atan(1) → π/4
Math.atan2(y, x)返回 y/x 的反正切值,考虑象限Math.atan2(1, 1) → π/4

04. Math 对象示例

4.1 计算圆的面积

let radius = 5;
let area = Math.PI * Math.pow(radius, 2);
console.log("Area of the circle: " + area);  // 输出 78.53981633974483

4.2 生成 1 到 100 之间的随机整数

let randomNum = Math.floor(Math.random() * 100) + 1;
console.log(randomNum);

4.3 使用三角函数计算斜边长度

已知直角三角形的两条直角边长度 a 和 b:

let a = 3, b = 4;
let hypotenuse = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
console.log("Hypotenuse: " + hypotenuse);  // 输出 5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/12775.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【健康警钟】胆已切除,生活调理有“胆”更精彩!必看指南!

在现代社会,由于生活习惯、饮食习惯等多种因素,一些人可能不得不面对胆囊切除手术。虽然手术能够有效解决胆囊结石、胆囊炎等问题,但胆囊作为人体的一部分,其功能的丧失无疑会对生活带来一定影响。那么,胆被割了之后&a…

windows NGIMX配置WebSocket反向代理

linux下 据说nginx是要有 stream的模块 Linux安装Nginx步骤之后续,带stream模块-CSDN博客 Nginx从1.3.13版本就开始支持WebSocket linux 下参考如下链接 配置 Nginx 反向代理 WebSocket - 哈喽哈喽111111 - 博客园 (cnblogs.com) SSL的配置参考 【Linux】采用…

三种读取配置文件的方式

在编写JDBC的util包以读取文件时,配置文件的位置会影响其读取方式。当前,默认配置文件直接放置在src文件夹下。 当读取.properties文件代码写法为: Properties props new Properties(); props.load(new FileInputStream("db.propertie…

丹摩征文活动|CogVideoX-2b:从安装到上线,轻松搞定全过程!

CogVideoX-2b:从安装到上线,轻松搞定全过程! CogVideoX简介 CogVideoX的推出标志着视频生成技术的一次重大突破。过去,如何在保持高效的同时提升视频质量一直是一个难题,但CogVideoX 通过其先进的3D变分自编码器&…

工位管理优化:Spring Boot企业级系统

3系统分析 3.1可行性分析 通过对本企业级工位管理系统实行的目的初步调查和分析,提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本企业级工位管理系统采用SSM框架,JAVA作为开…

EMQX服务器的搭建,实现本地机和虚拟机之间的MQTT通信(详细教程)

前言 MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。 MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(…

Unity 热更新 之 一篇文章完全入门AssetBundle

本篇知识来源于unity官方手册以及siki学院的相关教程,链接如下,仅作学习分享 AssetBundle(创建打包)入门学习(基于Unity2017) - SiKi学院|SiKi学堂 - unity|u3d|虚幻|ue4/5|java|python|人工智能|视频教程|在线课程 目录 0.热更新是什么 1.AssetBundl…

图片怎么去水印?5个简单好用的图片去水印方法分享!

在日常生活中,图片水印的去除需求时常涌现,无论是出于个人兴趣还是工作需求,掌握去水印技巧能让我们更自由地利用图片资源。今天,我们为您精心挑选并介绍五种实用的图片去水印方法,让您轻松上手,即刻提升图…

半导体测试领域CP和KGD的区别

在半导体测试领域,KGD(Known Good Die)和 CP(Chip Probing 或 Chip Test)是两个重要的概念,它们分别代表了不同阶段的测试和验证过程。下面详细解释这两者的区别: CP(Chip Probing …

人机融合智能中的系统与还原

一、人工智能中的系统与还原 人工智能(AI)作为现代科技的重要组成部分和应用涉及多个学领域,包括计算机科学、学、神经科学等人工智能的研究中系统的概念至关重要。系统不仅仅是简单的组件集合,更多地体现为各个部分之间的相互作用…

这可能是2024年看过最全最详细的Java面试八股文

前言: 本文收集整理了各大厂常见面试题 N 道,你想要的这里都有内容涵盖:Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、Redis、MySQL、Spring、Spring Boot、Spring Cloud、RabbitMQ、Kafka、Linux 等技术栈,希望大家都能找到…

010_SSH_Sqlserver多媒体技术与应用课程网(学习资料+前台考试)_lwplus87

目 录 摘 要... III Abstract V 第1章 概述... 1 1.1 课题背景... 1 1.2 课题意义... 2 1.3开发工具及技术... 2 1.3.1 MyEclipse. 2 1.3.2 Tomcat 2 1.3.3 SqlServer 3 1.3.4 JSP. 3 1.4国内外现状... 4 第2章 可行性分析及总体设计原则... 5 2.1可行性分析…

免费数字孪生平台打造物流数据可视化大屏,助力消费跑出加速度

在当今快速发展的时代,物流行业已成为连接生产与消费的重要桥梁。2024年,中国物流行业再次刷新纪录,8月13日,我国第1000亿件快递已顺利产生,比2023年提前了71天,这一速度令人惊叹。而在这背后,物…

Navict15 过期处理删除注册表

1.winR 注册表输入regedit 2.搜索输入HKEY_CURRENT_USER\Software\PremiumSoft\Navicat 3.输入HKEY_CURRENT_USER\Software\Classes\CLSID,找到只有一个info的,把包含info的这个文件夹删了。

计算机网络:运输层 —— TCP/IP运输层中的两个重要协议

文章目录 TCP 协议工作方式建立连接(三次握手)释放连接(四次挥手) 首部格式 UDP 协议首部格式适用场景 TCP 与 UDP 的对比无连接的UDP和面向连接的TCP对单播、多播和广播的支持情况对应用层报文的处理对数据传输可靠性的支持情况U…

OpenCV4.8 开发实战系列专栏之 13 - 图像翻转(Image Flip)

大家好,欢迎大家学习OpenCV4.8 开发实战专栏,长期更新,不断分享源码。 专栏代码全部基于C 与Python双语演示,专栏答疑群 请联系微信 OpenCVXueTang_Asst 本文关键知识点:图像翻转(Image Flip) 图像翻转的本质像素映…

内网基本概念及知识

参考: 微信公众号:网络安全自修室 1. 内网概述 内网也指局域网(Local Area Network,LAN),即在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网可以实现文件管理,应用软…

【JAVA】使用IDEA创建maven聚合项目

【JAVA】使用IDEA创建maven聚合项目 1.效果图 2.创建父模块项目 2.1删除父模块下面的src目录以及不需要的maven依赖 3创建子模块项目 3.1右击父模块项目选择Module… 3.2创建子模块 3.3删除子模块下不需要的maven依赖 4.子模块创建完成后引入SpringBoot依赖启动项目

wordpress搭建主题可配置json

网站首页展示 在线访问链接 http://dahua.bloggo.chat/ 配置json文件 我使用的是argon主题,你需要先安装好主题,然后可以导入我的json文件一键配置。 需要json界面配置文件的,可以在评论区回复,看见评论我会私发给你。~

员工利用公司资源做自己生意违法吗?怎么预防?答案揭秘:违法!只需这样做!

各位企业大佬们,你的员工有没有心怀不轨,试图利用职务之便,将公司的资源挪作私用,甚至做起自己的生意呢? 老板:这把心酸泪,我都不想说...... 那么,员工利用公司资源做自己生意是否违…