JavaScript高级程序设计 读书笔记之十一 内置对象Global
2012-03-07 00:00
731 查看
内置对象
定义:由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进行编码,示例:
encodeURIComponent():对参数进行编码,示例:
unescape() && decodeURI() && decodeURIComponent()
这几个方法用于对字符串进行解码。
eval()
eval()可能是ECMAScript语言中最强大的方法,该方法就像整个JavaScript的解释程序,接受一个参数,即要执行的ECMAScript(或JavaScript)字符串。
示例:
注意,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
定义:由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("http://www.jb51.net/a file with spaces.html") // outputs http://www.jb51.net/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高级程序设计 读书笔记之十一 内置对象Global
- JavaScript高级程序设计之引用类型之单体内置对象之Global对象第5.7.1讲笔记
- JavaScript高级程序设计 读书笔记之九 本地对象Array
- JavaScript高级程序设计 阅读笔记(十二) js内置对象Math
- JavaScript高级程序设计之引用类型之单体内置对象之Math对象第5.7.2讲笔记
- Javascript高级程序设计——13.内置对象
- JavaScript高级程序设计 阅读笔记(十二) js内置对象Math
- JavaScript高级程序设计 读书笔记之十 本地对象Date日期
- JavaScript高级程序设计 读书笔记之九 本地对象Array
- javascript高级程序设计第六章:面向对象的程序设计——继承读书笔记
- 【JavaScript高级程序设计】读书笔记之二 —— 理解对象的原型、继承
- JavaScript高级程序设计 (6章 创建对象)---读书笔记
- JavaScript高级程序设计第五章引用类型——单体内置对象
- JavaScript高级程序设计 读书笔记之十 本地对象Date日期
- javascript高级程序设计第六章:面向对象的程序设计——创建对象读书笔记
- javascript高级程序设计读书笔记----面向对象的程序设计
- 《JavaScript高级程序设计》读书笔记(十一):内置对象Global
- JavaScript高级程序设计之面向对象的程序设计之创建对象之原型模式 第6.2.3讲笔记
- Ajax与Comet-JavaScript高级程序设计第21章读书笔记(2)
- C#2008与.NET 3.5 高级程序设计读书笔记(21)-- 对象序列化