首页 > 编程语言 >JavaScript--Math

JavaScript--Math

时间:2022-10-28 20:01:15浏览次数:41  
标签:返回 console log -- max JavaScript num Math

一、概述

ECMAScript 提供了 Math 对象作为保存数学公式、信息和计算的地方。Math 对象提供了一些辅助计算的属性和方法。

注意:Math 对象上提供的计算要比直接在 JavaScript 实现的快得多,因为 Math 对象上的计算使用了 JavaScript 引擎中更高效的实现和处理器指令。但使用 Math 计算的问题是精度会因浏览器、操作系统、指令集和硬件而异。

二、属性

Math 对象有一些属性,主要用于保存数学中的一些特殊值。
image.png

三、方法

1、min()和 max()方法

min()和 max()方法用于确定一组数值中的最小值和最大值。这两个方法都接收任意多个参数。

let max = Math.max(3, 54, 32, 16); 
console.log(max); // 54 

let min = Math.min(3, 54, 32, 16); 
console.log(min); // 3

如果要找到数组中的最大或最小值,可以这样:

var arr = [3, 10, 2, 100]; 
var max = Math.max.apply(Math, arr); 
console.log(max); // 100

apply()方法是用来改变一个函数内的this指向,第一个参数就是要this指向的对象,第二个参数是一个数组。

2、舍入方法

接下来是用于把小数值舍入为整数的 4 个方法:Math.ceil()、Math.floor()、Math.round()和 Math.fround()。

Math.ceil()方法

Math.ceil()始终向上舍入为最接近的整数。

console.log(Math.ceil(25.9)); // 26 
console.log(Math.ceil(25.5)); // 26 
console.log(Math.ceil(25.1)); // 26
Math.floor()方法

Math.floor()始终向下舍入为最接近的整数。

console.log(Math.floor(25.9)); // 25 
console.log(Math.floor(25.5)); // 25 
console.log(Math.floor(25.1)); // 25
Math.round()方法

Math.round()执行四舍五入。

console.log(Math.round(25.9)); // 26 
console.log(Math.round(25.5)); // 26 
console.log(Math.round(25.1)); // 25
Math.fround()方法

Math.fround()返回数值最接近的单精度(32 位)浮点值表示。

console.log(Math.fround(0.4)); // 0.4000000059604645 
console.log(Math.fround(0.5)); // 0.5 
console.log(Math.fround(25.9)); // 25.899999618530273

3、random()方法

Math.random()方法返回一个 0~1 范围内的随机数,其中包含 0 但不包含 1。

很多时候,通过函数来算出可选总数和最小可能的值可能更方便,比如:

function selectFrom(lowerValue, upperValue) { 
 let choices = upperValue - lowerValue + 1; 
 return Math.floor(Math.random() * choices + lowerValue); 
} 
let num = selectFrom(2,10); 
console.log(num); // 2~10 范围内的值,其中包含 2 和 10 

这里的函数 selectFrom()接收两个参数:应该返回的最小值和最大值。通过将这两个值相减再加 1 得到可选总数,然后再套用上面的公式。于是,调用 selectFrom(2,10)就可以从 2~10(包含)范围内选择一个值了。使用这个函数,从一个数组中随机选择一个元素就很容易,比如:

let colors = ["red", "green", "blue", "yellow", "black", "purple", "brown"]; 
let color = colors[selectFrom(0, colors.length-1)];

4、其它方法

Math.abs(num) 返回num的绝对值 
Math.exp(num) 返回Math.E的num次幂 
Math.log(num) 返回num的自然对数 
Math.pow(num, power) 返回num的power次幂 
Math.sqrt(num) 返回num的平方根 
Math.acos(x) 返回x的反余弦值 
Math.asin(x) 返回x的反正弦值 
Matn.atan(x) 返回x的反正切值 
Math.atan2(y, x) 返回y/x的反正切值 
Math.cos(x) 返回x的余弦值 
Math.sin(x) 返回x的正弦值 
Math.tan(x) 返回x的正切值

标签:返回,console,log,--,max,JavaScript,num,Math
From: https://www.cnblogs.com/zhouwying/p/16837218.html

相关文章

  • Spark中RDD对DF的转换
    SparkRDDToDFpackagecom.sqlimportorg.apache.spark.rdd.RDDimportorg.apache.spark.sql.{DataFrame,Row,SparkSession}objectDemo06RDDtoDF{defmain(ar......
  • linux 主机名命名规范
    主要规则如下:主机名只允许包含ascii字符里的数字0-9,字母a-zA-Z,连字符-和.。其他都不允许。例如,不允许出现其他标点符号,不允许空格,不允许下划线,不允许中文字符。主机名的......
  • fmt包
    fmt包前言fmt包实现了类似C语言printf和scanf的格式化I/O。格式化动作('verb')源自C语言但更简单。fmt包主要分为①向外输出内容和②获取输入内容两大部分1.输出(写入操......
  • linux服务器,搭建socks5代理和http代理privoxy
    ssh-qTNf-D0.0.0.0:7070root@ip地址然后会提示输入密码即可,然后查看进程psaux|grepssh 看到这个,表示已经成功开启了7070端口的一个socks5的监听了,浏览器......
  • JavaScript--JSONP和Axios
    JSONP概述:JSONP(JSONwithpadding)是一种跨域解决方案,它主要是利用了script标签不受跨域影响的特性来完成对应的请求操作。实际上是一个get请求。JSONP格式包含两个部分:......
  • 初始C语言
     基本了解C语言的基础知识,对C语言有一个大概的认识。每个知识点就是简单认识,不做详细讲解重点:什么是C语言第一个C语言程序数据类型变量、常量字符串+转义字符+注释选择语句......
  • Python RabbitMQ pika的安装及direct路由模式的使用
    RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件,RabbitMQ服务器是用Erlang语言编写的,而集群和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有......
  • leetcode145-二叉树的后序遍历
    145.二叉树的后序遍历classSolution{public:vector<int>res;voidTracking(TreeNode*root){if(root==nullptr)return;Tracking......
  • JS中数值类型的本质
    一、JS中的数值类型众所JS爱好友周知,JS中只有一个总的数值类型——number,它包含了整型、浮点型等数值类型。其中,浮点数的实现思想有点复杂,它把一个数拆成两部分来存储。第......
  • Vue--动态路由
    router.addRouter的基础用法静态路由constroutes=[{path:'/',name:'Login',component:()=>import(/*webpackChunkName:"abou......