JavaScript高级程序设计 读书笔记之十一 内置对象Global


Posted in Javascript onMarch 07, 2012

内置对象

定义:由ECMAScript实现提供的、独立于宿主环境的所有对象,在ECMAScript程序开始执行时出现。

由定义可知开发者不必明确实例化内置对象,它已被实例化了。在ECMAScript-262只定义了两个内置对象,即Global和Math

Global

Global对象是ECMAScript中最特别的对象,因为实际上它根本不存在。

由于在ECMAScript中不存在独立的对象,所有函数都必须是某个对象的方法,如前面提到的isNaN()、isFinite()、parseInt()和parseFloat()等,都是Global对象的方法。

escape()、encodeURI()、encodeURIComponent()、unescape()、decodeURI()、decodeURIComponent()、eval()等都是Global的方法。

escape() && encodeURI() && encodeURIComponent()

这几个方法用于对字符串进行编码。

escape不编码字符有69个:*,+,-,.,/,@,_,0-9,a-z,A-Z

encodeURI不编码字符有82个:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z

encodeURIComponent不编码字符有71个:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z

escape():不建议用,已淘汰

encodeURI():对URL进行编码,示例:

encodeURI("https://3water.com/a file with spaces.html") 
// outputs https://3water.com/a%20file%20with%20spaces.html

encodeURIComponent():对参数进行编码,示例:
param1 = encodeURIComponent("http://xyz.com/?a=12&b=55") 
url ="http://domain.com/?param1="+ param1 +"¶m2=99"; 
// outputs http://www.domain.com/?param1=http%3A%2F%2Fxyz.com%2F%Ffa%3D12%26b%3D55¶m2=99

unescape() && decodeURI() && decodeURIComponent()

这几个方法用于对字符串进行解码。

eval()

eval()可能是ECMAScript语言中最强大的方法,该方法就像整个JavaScript的解释程序,接受一个参数,即要执行的ECMAScript(或JavaScript)字符串。

示例:

var msg="Hello world"; 
eval("alert(msg)");//alert "Hello world"

注意,eval()功能很强大,但也很危险,特别在用eval执行用户输入的内容时,可能会被代码注入。

Global对象的所有属性

Global不只有方法,它还有属性,Global对象的所有属性:

属性 说明
undefined Undifined类型的字面量
NaN 非数的专用数值
Infinity 无穷大值的专用数值
Object Object的构造函数
Array Array 的构造函数
Function Function 的构造函数
Boolean Boolean 的构造函数
String String 的构造函数
Number Number 的构造函数
Date Date 的构造函数
RegExp RegExp 的构造函数
Error Error 的构造函数
EvalError EvalError 的构造函数
RangeError RangeError 的构造函数
ReferenceError ReferenceError 的构造函数
SyntaxError SyntaxError 的构造函数
TypeError TypeError 的构造函数
URIError URIError 的构造函数
作者:天行健,自强不息

出处:http://artwl.cnblogs.com

Javascript 相关文章推荐
javascript 常用方法总结
Jun 03 Javascript
JavaScript定义类或函数的几种方式小结
Jan 09 Javascript
使用JS读秒使用示例
Sep 21 Javascript
js实现日历可获得指定日期周数及星期几示例分享(js获取星期几)
Mar 14 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
Jul 18 Javascript
node.js中的http.response.end方法使用说明
Dec 14 Javascript
JavaScript获取页面中第一个锚定文本的方法
Apr 03 Javascript
JS实现在状态栏显示打字效果完整实例
Nov 02 Javascript
Vue.js基础知识汇总
Apr 27 Javascript
javascript 将共享属性迁移到原型中去的实现方法
Aug 31 Javascript
vue实现在线翻译功能
Sep 27 Javascript
微信小程序开发摇一摇功能
Nov 22 Javascript
拥抱模块化的JavaScript
Mar 07 #Javascript
那些年,我还在学习jquery 学习笔记
Mar 05 #Javascript
什么是DOM(Document Object Model)文档对象模型
Mar 05 #Javascript
JQuery魔力之$("tagName")与selector
Mar 05 #Javascript
30个让人兴奋的视差滚动(Parallax Scrolling)效果网站
Mar 04 #Javascript
Javascript实现DIV滚动自动滚动到底部的代码
Mar 01 #Javascript
用最通俗易懂的代码帮助新手理解javascript闭包 推荐
Mar 01 #Javascript
You might like
php查看当前Session的ID实例
2015/03/16 PHP
PHP书写格式详解(必看)
2016/05/23 PHP
smarty模板数学运算示例
2016/12/11 PHP
PHP二维数组去重算法
2016/12/17 PHP
javascript下对于事件、事件流、事件触发的顺序随便说说
2010/07/17 Javascript
遨游,飞飞,IE,空中网 浏览器无提示关闭方法
2011/07/11 Javascript
node.js中的fs.write方法使用说明
2014/12/15 Javascript
JavaScript实现带缓冲效果的随屏滚动漂浮广告代码
2015/11/06 Javascript
Angular.js如何从PHP读取后台数据
2016/03/24 Javascript
原生 JS Ajax,GET和POST 请求实例代码
2016/06/08 Javascript
Listloading.js移动端上拉下拉刷新组件
2016/08/04 Javascript
jQuery插件HighCharts实现的2D对数饼图效果示例【附demo源码下载】
2017/03/09 Javascript
vue2.0模拟锚点的实例
2018/03/14 Javascript
浅析vue-router jquery和params传参(接收参数)$router $route的区别
2018/08/03 jQuery
Vue-drag-resize 拖拽缩放插件的使用(简单示例)
2019/12/04 Javascript
[02:04]2014DOTA2国际邀请赛 BBC小组赛第三天总结
2014/07/12 DOTA
Python的lambda匿名函数的简单介绍
2013/04/25 Python
python获得linux下所有挂载点(mount points)的方法
2015/04/29 Python
分享Python开发中要注意的十个小贴士
2016/08/30 Python
Python数据分析之双色球中蓝红球分析统计示例
2018/02/03 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
解决项目pycharm能运行,在终端却无法运行的问题
2019/01/19 Python
Django admin model 汉化显示文字的实现方法
2019/08/12 Python
python编写计算器功能
2019/10/25 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
2020/06/03 Python
OpenCV Python实现图像指定区域裁剪
2021/03/12 Python
在Python中字典按值排序的实现方法
2020/11/12 Python
New Balance澳大利亚官网:运动鞋和健身服装
2019/02/23 全球购物
小学国庆节活动方案
2014/02/11 职场文书
大学生暑期实践感言
2014/02/26 职场文书
销售内勤岗位职责
2014/04/15 职场文书
2014小学教师个人工作总结
2014/11/10 职场文书
幼儿园园长六一致辞
2015/07/31 职场文书
诚信教育主题班会
2015/08/13 职场文书
解决jupyter notebook图片显示模糊和保存清晰图片的操作
2021/04/24 Python
python爬虫之selenium库的安装及使用教程
2021/05/23 Python