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

内置对象
  定义:由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://www.jb51.net/a file with spaces.html")
// outputs https://www.jb51.net/a%20file%20with%20spaces.html


encodeURIComponent():对参数进行编码,示例:

复制代码 代码如下:


param1 = encodeURIComponent("http://xyz.com/?a=12&b=55")
url ="http://domain.com/?param1="+ param1 +"&param2=99";
// outputs ?param1=http%3A%2F%2Fxyz.com%2F%Ffa%3D12%26b%3D55&param2=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 的构造函数

 
作者:天行健,自强不息

出处:

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdjgwy.html