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

 更新时间:2012年03月07日 07:55:17   作者:  
由ECMAScript实现提供的、独立于宿主环境的所有对象,在ECMAScript程序开始执行时出现
内置对象
  定义:由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 http://www.domain.com/?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 的构造函数

作者:天行健,自强不息

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

相关文章

  • JavaScript模拟实现键盘打字效果

    JavaScript模拟实现键盘打字效果

    这篇文章主要介绍了JavaScript模拟实现键盘打字效果,本文直接给出实例代码,需要的朋友可以参考下
    2015-06-06
  • Webpack 模块加载动态引入机制源码示例解析

    Webpack 模块加载动态引入机制源码示例解析

    这篇文章主要为大家介绍了Webpack 模块加载动态引入机制源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • JS触摸与手势事件详解

    JS触摸与手势事件详解

    这篇文章主要为大家详细介绍了JS触摸与手势事件的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • 基于zepto.js实现登录界面

    基于zepto.js实现登录界面

    这篇文章主要为大家详细介绍了使用zepto.js,纯JS写的登录界面,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • 微信小程序地图实现展示线路

    微信小程序地图实现展示线路

    这篇文章主要为大家详细介绍了微信小程序地图实现展示线路,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • MVVM 双向绑定的实现代码

    MVVM 双向绑定的实现代码

    这篇文章主要介绍了MVVM 双向绑定的实现代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • 用jmSlip编写移动端顶部日历选择控件

    用jmSlip编写移动端顶部日历选择控件

    这篇文章主要为大家详细介绍了利用jmSlip编写移动端顶部日历选择组件的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • javascript实现下雨效果

    javascript实现下雨效果

    本文主要介绍了javascript实现下雨效果的示例代码。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • JS实现的4种数字千位符格式化方法分享

    JS实现的4种数字千位符格式化方法分享

    这篇文章主要介绍了JS实现的4种数字千位符格式化方法分享,本文给出了4种千分位格式化方法并对它们的性能做了比较,需要的朋友可以参考下
    2015-03-03

最新评论