JS 单体内置对象
内置对象: 由ECMAScript提供的、不依赖于宿主环境的对象,这些对象在ECMAScript程序执行之前就已经存在了。
不必由开发人员显式地实例化内置对象
比如: Object Array String Global Math
1.Global 对象
所有在全局作用域中定义的属性和函数,都是Global对象的属性
(1)URI 编码方法
(2)eval() 方法 像是一个完整的ECMAScript 解析器,只接收一个参数,即要执行的ECMAScript(或JavaScript)字符串
eval() 执行的代码被认为是包含该次调用的执行环境的一部分,因而被执行的代码具有与该执行环境相同的作用域链
意味着可以引用包含在环境内定义的变量
如:
var msg = "hello world";
eval("alert(msg)"); //hello world
eval("function sayHi() { alert('hi'); }");
sayHi()
显然sayHi()是在eval()内部定义的,但是对eval()的调用最终会被替换为定义函数的实际代码
因此可以在下一行调用;对于变量也一样
!! 不会发生变量提升,只在eval()执行时创建
(3)window对象
ECMAScript虽然没用指出如何访问Global对象,但Web浏览器都是将这个全局对象作为window对象的一部分加以实现的,因此,在全局作用域中声明的所有变量和函数,就都成了window对象的属性
另一种取得Global对象的方法
var global = function() {
return this;
}();
在没给函数明确指定this值的情况下,this值等于Global对象
2.Math 对象
Math.ceil() 向上舍入 取整
Math.floor()向下舍入 取整
Math.round()标准舍入
Math.random() 返回大于等于0小于1的一个随机数
JS 单体内置对象的更多相关文章
- js单体内置对象
js单体内置对象:js的内置对象,是ECMAScritp提供的.不依赖于宿主环境的对象,我的理解就是在我们开发之前js里面就已经存在的对象.单体内置对象就是是不需要通过new来实例化的,例如我们的st ...
- JS单体内置对象之Math常用方法(min,max,ceil,floor,round,random等)
1.min()和max()方法 Math.min()用于确定一组数值中的最小值.Math.max()用于确定一组数值中的最大值. alert(Math.min(2,4,3,6,3,8,0,1,3)); ...
- RegExp类型,单体内置对象
1.RegExp类型: 1)什么是正则表达式:RegExp --是一种规则,模式 --强大的字符串匹配工具 --创建: --使用RegExp构造函数创建:var re=new ...
- Javascript高级编程学习笔记(18)—— 引用类型(7)单体内置对象
什么是内置对象呢? js高级程序设计中给出的定义为:由ES规定不依赖于宿主环境的对象,这些对象在JS执行前就已经存在 前面我们介绍的引用类型都是内置对象 除了这些对象外ECMA还规定了两个单体内置对象 ...
- DOM笔记(九):引用类型、基本包装类型和单体内置对象
一.Array 1 .创建数组的方式 //Array构造函数(可以去掉new) var colors0 = new Array(); var colors1 = new Array(20); var ...
- 《JavaScript 闯关记》之单体内置对象
ECMA-262 对内置对象的定义是「由 JavaScript 实现提供的.不依赖于宿主环境的对象,这些对象在 JavaScript 程序执行之前就已经存在了」.意思就是说,开发人员不必显式地实例化内 ...
- JavaScript高级编程———基本包装类型String和单体内置对象Math
JavaScript高级编程———基本包装类型和单体内置对象 <script> var stringObject = new String("hello world") ...
- js arguments 内置对象
1.arguments是js的内置对象. 2.在不确定对象是可以用来重载函数. 3.用法如下: function goTo() { var i=arguments.length; alert(i); ...
- javascript学习笔记 - 引用类型 单体内置对象
七 单体内置对象 1.Global对象 不属于任何对象的属性和方法,都归于它.全局作用域中定义的变量.函数,都属于Global对象 1.1 URI编码 encodeURI <=>deco ...
随机推荐
- 使用python调用email模块发送邮件附件
使用python调用email模块实现附件发送 需要模块: import datetime import time import sys import mimetypes import smtplib ...
- Java链表和递归
删除链表的指定元素: public class ListNode { public int val; public ListNode next; public ListNode(int x){ val ...
- Personal小金库(避免遗忘,优秀的网址会保存于此方便自己查看)
由于记性不好,~.~,所以整理了一下一些自己经常看的网址或者博客......不断更新中,如果对您造成了侵权,我立马删除.谢谢~.~ 1:个人的一些link~.~ 博客园名称:别先生 博客园网址:htt ...
- ExceptionLess的webAPI调用
引用 <package id="bootstrap" version="3.0.0" targetFramework="net461" ...
- MySQL的预处理技术
所谓的预处理技术,最初也是由MySQL提出的一种减轻服务器压力的一种技术! 传统mysql处理流程 1, 在客户端准备sql语句 2, 发送sql语句到MySQL服务器 3, 在MySQL服务器 ...
- T37302 P哥的桶
题解: 比较简单的一道题 线段树+线性基 显然离线处理出位置 然后线段树updata的时候暴力合并线性基 nlogn^3 一个常数优化就是线性基已满就直接返回这个线性基 还有个优化是用快速找到第一个1 ...
- ANGULAR6.x - 错误随笔 - Can't bind to 'formGroup'
formGroup:错误 Can't bind to 'formGroup' since it isn't a known property of 'form'. (" 原因: 在使用for ...
- 2018牛客网暑假ACM多校训练赛(第十场)H Rikka with Ants 类欧几里德算法
原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round10-H.html 题目传送门 - https://www.n ...
- day60 pymysql
预知扩展内容,详见地址如下(关于数据库备份和恢复) http://www.cnblogs.com/linhaifeng/articles/7525619.html 我们一般写程序都是在py文件里面,那 ...
- day4 字符串的操作
今天是第四天,一如既往的每天都有不会做的内容,然后还是那种你使劲的绞尽脑汁都想不出来的问题,而且还得是别人提示着,讲着,演示着才能明白的,过后自己还得使劲捉摸才能慢慢吃透.一开始还挺顺利的,还以为自己 ...