单体内置对象 Global 和 Math
单体内置对象
Global 和 Math
在所有代码执行前,作用域中就已经存在两个内置对象:Global(全局)和Math。在大多数ES实现中都不能直接访问Global对象。不过,WEB浏览器实现了承担该角色的window对象。全局变量和函数都是Global对象的属性。详细参考P131
Math对象提供了很多属性和方法,用于辅助完成复杂的数学计算任务。
$:Math对象的属性
Math对象包含的属性大都是数学计算中可能会用到一些特殊值。
例:
属性 说明
Math.E 自然对数的底数,即常量e的值 2.718281828459045
Math.LN10 10的自然对数 2.302585092994046
Math.LN2 2的自然对数 0.6931471805599453
Math.LOG2E 以2为底e的对数 1.4426950408889634
Math.LOG10E 以10为底e的对数 0.4342944819032518
Math.PI π的值 3.141592653589793
Math.SQRT1_2 1/2的平方根 0.7071067811865476
Math.SQRT2 2的平方根 1.4142135623730951
$:Math.min() 和 Math.max() 这两个方法用于确定一组数值中的最小值和最大值。
例:
var min = Math.min(1,2,3,4,5); //1
var min = Math.max(1,2,3,4,5); //5
//可以隐式类型转换
var min = Math.min(1,2,3,4,"5"); //NAN
var min = Math.max(1,2,3,4,"5"); //NAN
如果要想找到数组的最大最小值,用apply()方法
例:
var arr = [1,2,3,4,5];
var min = Math.min.apply(Math,arr);//
$:舍入方法
* Math.ceil() Math.ceil()执行向上舍入,即它总是将数值向上舍入为最接近的整数;(向上取整)
* Math.floor() 执行向下舍入,即它总是将数值向下舍入为最接近的整数;(向下取整)
* Math.round() 执行标准舍入,即它总是将数值四舍五入为最接近的整数;(四舍五入)
注意:Math.round(4.499999999999999999999);
$:Math.random() 方法 返回大于等于0小于1的一个随机数 0 <= x < 1
封装一个方法:随机生成n到m的随机数。
function random(n,m){
var num = m-n+1;
return Math.floor(Math.random()*num + n);
}
$:其他方法
方法 说明
Math.abs(number) 返回number的绝对值
Math.exp(number) 返回Math.E的number次幂
Math.log(number) 返回number的自然对数
Math.pow(number,power) 返回number的power次幂
Math.sqrt(number) 返回number的平方根
Math.acos(x) 返回x的反余弦值
Math.asin(x) 返回x的反正弦值
Math.atan(x) 返回x的反正切值
Math.atan2(y,x) 返回y/x的反正切值
Math.cos(x) 返回x的余弦值
Math.sin(x) 返回x的正弦值
Math.tan(x) 返回x的正切值
单体内置对象 Global 和 Math的更多相关文章
- 单体内置对象——Global对象
单体内置对象的定义:由ECMAScript实现提供的.不依赖于宿主环境的对象,这些对象在ECMAScript程序执行之前已经存在了.意思就是说:开发人员不必显式地实例化内置对象,因为他们已经实例化了. ...
- 内置对象Global和Math对象
Global对象Math对象 1.Global对象Global.属性方法或者Global.方法()是无效的,web浏览器将Global作为window对象的一部分加一实现.uri编码——了解2.eva ...
- RegExp类型,单体内置对象
1.RegExp类型: 1)什么是正则表达式:RegExp --是一种规则,模式 --强大的字符串匹配工具 --创建: --使用RegExp构造函数创建:var re=new ...
- JavaScript高级编程———基本包装类型String和单体内置对象Math
JavaScript高级编程———基本包装类型和单体内置对象 <script> var stringObject = new String("hello world") ...
- DOM笔记(九):引用类型、基本包装类型和单体内置对象
一.Array 1 .创建数组的方式 //Array构造函数(可以去掉new) var colors0 = new Array(); var colors1 = new Array(20); var ...
- 《JavaScript 闯关记》之单体内置对象
ECMA-262 对内置对象的定义是「由 JavaScript 实现提供的.不依赖于宿主环境的对象,这些对象在 JavaScript 程序执行之前就已经存在了」.意思就是说,开发人员不必显式地实例化内 ...
- Javascript高级编程学习笔记(18)—— 引用类型(7)单体内置对象
什么是内置对象呢? js高级程序设计中给出的定义为:由ES规定不依赖于宿主环境的对象,这些对象在JS执行前就已经存在 前面我们介绍的引用类型都是内置对象 除了这些对象外ECMA还规定了两个单体内置对象 ...
- javascript学习笔记 - 引用类型 单体内置对象
七 单体内置对象 1.Global对象 不属于任何对象的属性和方法,都归于它.全局作用域中定义的变量.函数,都属于Global对象 1.1 URI编码 encodeURI <=>deco ...
- js单体内置对象
js单体内置对象:js的内置对象,是ECMAScritp提供的.不依赖于宿主环境的对象,我的理解就是在我们开发之前js里面就已经存在的对象.单体内置对象就是是不需要通过new来实例化的,例如我们的st ...
随机推荐
- palindrome-partitioning-ii leetcode C++
Given a string s, partition s such that every substring of the partition is a palindrome. Return the ...
- 恶意代码分析实战四:IDA Pro神器的使用
目录 恶意代码分析实战四:IDA Pro神器的使用 实验: 题目1:利用IDA Pro分析dll的入口点并显示地址 空格切换文本视图: 带地址显示图形界面 题目2:IDA Pro导入表窗口 题目3:交 ...
- k8s入坑之路(5)kube-apiserver详解
API Server kube-apiserver 是 Kubernetes 最重要的核心组件之一,主要提供以下的功能 提供集群管理的 REST API 接口,包括认证授权.数据校验以及集群状态变更等 ...
- 浅谈Vue中计算属性(computed)和方法(methods)的差别
浅谈Vue中计算属性(computed)和方法(methods)的差别 源码地址 methods方法和computed计算属性,两种方式的最终结果确实是完全相同 计算属性是基于它们的响应式依赖进行缓存 ...
- Buildroot 用户手册 (中文)
文章目录 I. Getting started 1. About Buildroot 2. System requirements 2.1. Mandatory packages 2.2. Optio ...
- Effective Python(3)- 了解 bytes 与 str 的区别
Python 有两种类型可以表示字符序列 bytes:实例包含的是原始数据,即 8 位的无符号值(通常按照 ASCII 编码标准来显示) str:实例包含的是 Unicode 码点(code poin ...
- c++学习笔记2(const关键词的用法)
定义常量指针 优势(便于类型检查,define无类型检查(目前不是很理解)) (函数参数为常量指针时,可避免函数内部不小心改变参数指针所指的地方,如有出现此类语句,编译则会报错) strcpy:复制字 ...
- 问题 G: 心急的C小加
题目描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间,如果第i+1个木棒的重量和长度都大于等于第i个处理的木棒,那么将不会耗费时间,否 ...
- Effective C++ 总结笔记(四)
五.实现 26.尽可能延后变量定义式的出现时间 尽可能延后变量定义式的出现,甚至应该尝试延后这份定义直到能够给他初值实参为止,这样不仅能避免构造和析构非必要对象,避免无意义的default行为,也可增 ...
- Github webhooks 自动部署博客文章,使用总结【含视频】
作者:小傅哥 博客:https://bugstack.cn 原文:https://mp.weixin.qq.com/s/VtTHUfyiITNSoGy052jkXQ 沉淀.分享.成长,让自己和他人都能 ...