7-39 Math对象

学习要点

  • 掌握常用的数学计算方法

温馨提示:关于学习方法的建议

不要强求自己讲参考手册上所以的属性和方法都搞清楚,原因如下:

  1. 有些属性和方法非常生僻,很少用,甚至经过一段时间后会被废弃
  2. JavaScript虽然只是一门计算机语言,但学习它和我们学习汉语英语一样,
    我们并不能掌握认识所有的汉字,但是并不妨碍我们使用汉语,英语等其他语言亦是如此
  3. 在我们讲课过程中当然应该尽可能的讲的仔细,同时也要兼顾效率,如果所有的属性演示一遍,即使我有耐心讲,大家也绝没有耐心听,因为既没有意义也没有必要。
  4. 对于我没有讲过的属性和方法,如果真的用到了可以自己百度一下,或者参考一下手册。

Math 对象

    1. Math 对象用于执行数学任务。
    2. Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math()。

算数值

JavaScript 提供 8 种可被 Math 对象访问的算数值:

  • Math.PI 返回圆周率(约等于3.14159)。
  • Math.E 返回算术常量 e,即自然对数的底数(约等于2.718)。
  • Math.SQRT2 返回 2 的平方根(约等于 1.414)。
  • Math.SQRT1_2 返回返回 1/2 的平方根(约等于 0.707)。
  • Math.LN2 返回 2 的自然对数(约等于0.693)。
  • Math.LN10 返回 10 的自然对数(约等于2.302)。
  • Math.LOG2E 返回以 2 为底的 e 的对数(约等于 1.443)。
  • Math.LOG10E 返回以 10 为底的 e 的对数(约等于0.434)。

数值取整

  • ceil(x) 对数进行上舍入。
  • floor(x) 对数进行下舍入。
  • round(x) 把数四舍五入为最接近的整数。

随机数

  • random() 返回 0 ~ 1 之间的随机数
  • 注意并不包括0和1

三角函数

  • cos(x) 返回数的余弦。
  • acos(x) 返回 x 的反余弦值。
  • sin(x) 返回数的正弦。
  • asin(x) 返回 x 的反正弦值。
  • tan(x) 返回角的正切。
  • atan(x) 以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。

其他方法

  • max(x,y) 返回 x 和 y 中的最高值。
  • min(x,y) 返回 x 和 y 中的最低值。
  • abs(x) 返回 x 的绝对值。
  • atan2(y,x) 返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。
  • exp(x) 返回 e 的指数。
  • log(x) 返回数的自然对数(底为e)。
  • pow(x,y) 返回 x 的 y 次幂
  • valueOf() 返回 Math 对象的原始值。

JS中,用数学Math对象的max方法即可求出一组值中的最大值:

<script>
var maxnum=Math.max(1,2,3,4,5);
document.write("最大的值是:"+maxnum);
</script>

7-39 Math对象的更多相关文章

  1. #9.6课堂JS总结#变量作用域 date()对象 math()对象

    一.变量的作用域 1.JavaScript的作用域链 首先看下下面这段代码: <script type="text/javascript"> var rain = 1; ...

  2. JS学习笔记10之Math对象

    -->Math对象 常用属性和方法-->使用Math对象制作相应的效果 Math对象用于执行数学任务 一.Math对象的属性: 二.Math对象的方法: 三.常用属性和方法: Math.P ...

  3. js 中 Math对象

    Math 对象是一个固有的对象,无需创建它,直接把 Math 作为对象使用就可以调用其所有属性和方法.这是它与Date,String对象的区别. Math 对象属性 Math 对象方法

  4. js入门篇之Math对象

    Math对象用于执行数学任务 Math对象的属性: Math对象的方法: 常用属性和方法: Math.PI ----------------返回圆周率3.14 ... Math.ceil(x) --- ...

  5. 如何使用Math对象快速计算数组中的最大值或最小值

    Math 对象下包含 min() 和 max() 方法 用于确定一组数值中的最大值和最小值.这两个方法都可以接收任意多个数值参数. var max = Math.max(1,2,3,4,5,6); c ...

  6. javascript类型系统——Math对象

    × 目录 [1]常量 [2]函数 前面的话 javascript使用算术运算符实现基本的算术运算,如果要实现更加复杂的算术运算,需要通过Math对象定义的常量和函数来实现.和其他对象不同,Math只是 ...

  7. 原生JS:Math对象详解

    Math对象 本文参考MDN做的详细整理,方便大家参考MDN Math 也是一个内置对象, 为数学常量和数学函数提供了属性和方法,而不是一个函数对象. 与其它全局对象不同的是, Math 不是一个构造 ...

  8. JavaScript Math 对象

    JavaScript Math 对象 Math 对象 Math 对象用于执行数学任务. Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(). 语法 var ...

  9. JavaScript中的Math对象

    Math对象中提供的计算功能执行起来比你在代码中写的js要快得多,这是它的一个很好的优点.   属性: 属性 说明 Math.E 即常量e的值 Math.LN10 ln10 Math.LN2 ln2 ...

  10. js Math 对象的方法

    Math对象与JavaScript其他对象不同,因为用户不能生成所使用对象的副本,相反脚本汇集了简单Math对象的属性和方法.Math对象实际上存在于每个窗口和框架中,但是对脚本没有影响,程序员把这种 ...

随机推荐

  1. ssm依赖

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  2. SPOJ DCEPC11I

    题目大意: 就是给定一段区间令其中的数增加一个递增序列(也就是说第一个+1,第二个+2.....) 询问操作是区间的和 这里的查询很简单,但是对于添加递增序列入区间就比较搞脑子了 我们需要一个add[ ...

  3. 【链表】2017多校训练三 HDU 6058 Kanade's sum

    acm.hdu.edu.cn/showproblem.php?pid=6058 [题意] 给定一个排列,计算 [思路] 计算排列A中每个数的贡献,即对于每个ai,计算有ni个区间满足ai是区间中的第k ...

  4. hdu 2845

    #include<stdio.h> #define N 200100 int f[N]; int  a[N],n; int main() { int m,j,i,suma,sumb,sum ...

  5. HTTP错误:java.lang.IllegalArgumentException: Illegal character in scheme at index 0: http://xxxxxx

    读取T卡文件里的域名,HTTP请求出现如下错误 java.lang.IllegalArgumentException: Illegal character in scheme at index 0: ...

  6. 《TCP/IP详解卷1:协议》——第3章 IP:网际协议(转载)

    1.引言 IP是TCP/IP协议族中最核心的协议.所有的TCP.UDP.ICMP及IGMP数据都以IP数据报格式传输.IP提供不可靠. 无连接的数据报传送服务. (1)不可靠 它不能保证IP数据报能成 ...

  7. webmagic使用手册

    https://my.oschina.net/flashsword/blog/180623 重点 SeleniumDownloader 对于一些Javascript动态加载的网页,仅仅使用http模拟 ...

  8. P3366 最小生成树【模板】 洛谷

    https://www.luogu.org/problem/show?pid=3366 题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出orz 输入输出格式 输入格式: 第一行包 ...

  9. HUST 1328 String

    11: KMP next 的强大 题意求前缀在S中出现的次数之和 next[j] 表示 S[0....NEXT[J]]==S[J-NEXT[J].....J]; 于是我们得到..后加入一个字符所得到新 ...

  10. Ubuntu 16.04安装SQLite Browser操作SQLite数据库

    安装: sudo apt-get install sqlitebrowser 启动: