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 相关文章推荐
jquery遍历input取得input的name
Apr 27 Javascript
JavaScript模版引擎的基本实现方法浅析
Feb 15 Javascript
JS Attribute属性操作详解
May 19 Javascript
js点击按钮实现水波纹效果代码(CSS3和Canves)
Sep 15 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
May 11 Javascript
Javascript 编码约定(编码规范)
Mar 11 Javascript
JS实现图片转换成base64的各种应用场景实例分析
Jun 22 Javascript
pageGroup.js实现分页功能
Jul 27 Javascript
微信小程序实现音乐播放器
Nov 20 Javascript
Vue路由守卫及页面登录权限控制的设置方法(两种)
Mar 31 Javascript
express异步函数异常捕获示例详解
Nov 30 Javascript
JS函数式编程实现XDM一
Jun 16 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
FleaPHP的安全设置方法
2008/09/15 PHP
PHP实现文件上传与下载实例与总结
2016/03/13 PHP
php调用自己java程序的方法详解
2016/05/13 PHP
php mysql like 实现多关键词搜索的方法
2016/10/29 PHP
laravel + vue实现的数据统计绘图(今天、7天、30天数据)
2018/07/31 PHP
文本框的字数限制功能jquery插件
2009/11/24 Javascript
jquery 表单取值常用代码
2009/12/22 Javascript
jquery方法+js一般方法+js面向对象方法实现拖拽效果
2012/08/30 Javascript
Javascript浮点数乘积运算出现多位小数的解决方法
2014/02/17 Javascript
jQuery中append()方法用法实例
2015/01/08 Javascript
JavaScript跨平台的开源框架NativeScript
2015/03/24 Javascript
基于javascript实现图片滑动效果
2016/05/07 Javascript
js 定义对象数组(结合)多维数组方法
2016/07/27 Javascript
浅谈angularjs module返回对象的坑(推荐)
2016/10/21 Javascript
JQuery 又谈ajax局部刷新
2017/11/27 jQuery
vue.js中引入vuex储存接口数据及调用的详细流程
2017/12/14 Javascript
微信小程序云开发之使用云数据库
2019/05/17 Javascript
小程序server请求微信服务器超时的解决方法
2019/05/21 Javascript
JavaScript常用工具函数大全
2020/05/06 Javascript
解决iView Table组件宽度只变大不变小的问题
2020/11/13 Javascript
使用python调用浏览器并打开一个网址的例子
2014/06/05 Python
用Python的Django框架编写从Google Adsense中获得报表的应用
2015/04/17 Python
PyQt打开保存对话框的方法和使用详解
2019/02/27 Python
tensorflow的计算图总结
2020/01/12 Python
新年福利来一波之Python轻松集齐五福(demo)
2020/01/20 Python
Windows下实现将Pascal VOC转化为TFRecords
2020/02/17 Python
Python爬虫实例——scrapy框架爬取拉勾网招聘信息
2020/07/14 Python
CSS3教程(6):创建网站多列
2009/04/02 HTML / CSS
实例讲解CSS3中的border-radius属性
2015/08/18 HTML / CSS
如何使用css3实现一个类在线直播的队列动画的示例代码
2020/06/17 HTML / CSS
css3 transform过渡抖动问题解决
2020/10/23 HTML / CSS
设计师家具购买和委托在线市场:Viyet
2016/11/16 全球购物
森林病虫害防治方案
2014/06/02 职场文书
工程技术员岗位职责
2015/04/11 职场文书
专项资金申请报告
2015/05/15 职场文书
使用Bandicam录制鼠标指针并附带点击声音,还可以添加点击动画效果
2022/04/11 数码科技