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 last-child 列表最后一项的样式
Jan 22 Javascript
jquery UI Datepicker时间控件的使用方法(终结版)
Nov 07 Javascript
JS函数的几种定义方式分析
Dec 17 Javascript
微信小程序(应用号)开发新闻客户端实例
Oct 24 Javascript
利用JQuery直接调用asp.net后台的简单方法
Oct 27 Javascript
JS实现淡入淡出图片效果的方法分析
Dec 20 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
Mar 09 Javascript
Angular2使用Guard和Resolve进行验证和权限控制
Apr 24 Javascript
jQuery实现碰到边缘反弹的动画效果
Feb 24 jQuery
Node.js实现注册邮箱激活功能的方法示例
Mar 23 Javascript
Angularjs Ng_repeat中实现复选框选中并显示不同的样式方法
Sep 12 Javascript
对于防止按钮重复点击的尝试详解
Apr 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
追求程序速度,而不是编程的速度
2008/04/23 PHP
基于PHP实现等比压缩图片大小
2016/03/04 PHP
基于Laravel实现的用户动态模块开发
2017/09/21 PHP
JavaScript 解析Json字符串的性能比较分析代码
2009/12/16 Javascript
JavaScript replace(rgExp,fn)正则替换的用法
2010/03/04 Javascript
8个超实用的jQuery功能代码分享
2015/01/08 Javascript
JavaScript常用脚本汇总(二)
2015/03/04 Javascript
JavaScript动态改变div属性的实现方法
2015/07/22 Javascript
用window.onerror捕获并上报Js错误的方法
2016/01/27 Javascript
require.js配合插件text.js实现最简单的单页应用程序
2016/07/12 Javascript
详解Bootstrap的iCheck插件checkbox和radio
2016/08/24 Javascript
jQuery实现鼠标滑过图片移动特效
2016/12/08 Javascript
vue轮播图插件vue-awesome-swiper的使用代码实例
2017/07/10 Javascript
js+html5实现侧滑页面效果
2017/07/15 Javascript
JS实现页面内跳转的简单代码
2017/09/03 Javascript
JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析
2018/07/26 Javascript
JavaScript继承与聚合实例详解
2019/01/22 Javascript
Python 操作MySQL详解及实例
2017/04/30 Python
Python3使用turtle绘制超立方体图形示例
2018/06/19 Python
Python闭包函数定义与用法分析
2018/07/20 Python
学生信息管理系统python版
2018/10/17 Python
python opencv 批量改变图片的尺寸大小的方法
2019/06/28 Python
Python3.7黑帽编程之病毒篇(基础篇)
2020/02/04 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
2020/02/26 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
YSL圣罗兰美妆俄罗斯官网:Yves Saint Lauret RU
2020/09/23 全球购物
介绍一下Python中webbrowser的用法
2013/05/07 面试题
超市仓管员岗位职责
2014/04/07 职场文书
《陈毅探母》教学反思
2014/05/01 职场文书
淘宝好评语大全
2014/05/05 职场文书
财政局长个人总结
2015/03/04 职场文书
我的法兰西岁月观后感
2015/06/09 职场文书
python基于opencv批量生成验证码的示例
2021/04/28 Python
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python
Win11如何启用启动修复 ? Win11执行启动修复的三种方法
2022/04/08 数码科技
如何利用python实现列表嵌套字典取值
2022/06/10 Python