博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

JS---对象

Posted on 2013-06-14 10:23  Amy-lover  阅读(478)  评论(0编辑  收藏  举报

JS再可以创建并使用的对象包括三种类型:本地对象、内置对象和宿主对象

1 本地对象

独立于宿主环境的JS预定义的对象,本地对象实际上是构造函数,用户自定义的对象都是本地对象的具体实例

Object Function Array
ReferenceError RangeError String
SyntaxError EvalError Boolean
TypeError Error Number
URLError RegExp Date

 

 2 内置对象

内置对象是由本地对象来实现的,且独立于宿主环境的所有对象。内置对象常驻内存,因此不需要实例化,JS的内置对象有Math和Global两个

也有人把本地对象和内置对象统称为原生对象,与宿主对象相对

3 宿主对象

宿主对象是JS寄宿环境定义的对象,是由客户端浏览器环境定义的,与JS语言本身没有直接的关系,不过JS可以控制这些对象的行为,实现对其进行的读写操作,包括Window、Document、History等

4 Global对象

其实Global对象是不存在的,我们无法访问到,也无法实例化,但是它却拥有很多属性和方法

Global对象的属性 说明
Inifinity 表示正无穷大
NaN 非数字
undefined 未定义的值

 

Global对象的方法 说明
encodeURI() 对某些字符进行转义对URL进行编码
decodeURI() 对使用encodeURI方法的URL进行解码
encodeURIComponent() 对URL的组件进行编码
decodeURIComponent() 对URL的组件进行解码
escape() 使用转义序列替换某些字符来对字符串进行编码
unescape() 对使用escape的字符串进行解码
eval() 计算JS代码字符串的值,并返回计算值
isFinite() 检测一个值是否是无穷大的数字
isNaN() 检测一个值是否是非数字的值
parseFloat() 把字符串解析为浮点类型的数据
parseInt() 把字符串解析为整型的数据

 由于JS中规定了所有的对象和函数都不是独立存在的,所有的函数都是某个对象的方法,所有的对象都是某个类的子类,因此JS定义了一个虚无的抽象类Global,它作为JS的全局属性和全局函数的占位符而存在,但是我们不能使用Global来调用全局属性或者函数,因为Global是一个高度抽象的虚无概念。实际上,只要一个对象定义了特殊环境列出的基本属性和函数,那么这个对象就可以称为全局对象,例如在客户端JS环境下,全局对象是Window对象,它表示允许JS代码的浏览器窗口。

5 Math对象

在JS中将所有复杂的数学公式和运算都封装在Math对象中,该对象是内置对象,常驻内存,不需要实例化,就可以直接调用

Math对象的常量 说明
E 常量e,自然对数的底数
PI π的值,约为3.14159265....

 

 

Math对象的常用方法 说明
sin() 计算正弦值
cos() 计算余弦值
log() 计算一个数的自然对数
exp(x) 计算常量e的x次方
pow(x,y) 计算x的y次方
sqrt() 计算平方根
abs() 计算绝对值
round() 四舍五入
ceil() 向上舍入
floor() 向下舍入
max() 返回最大参数
min() 返回最小参数
random() 返回0.0-1.0之间的一个随机数

 6 Date对象

JS将时间作为一种特殊的字符串来表示,并通过Date对象进行统一管理,在一些特殊的环境中,时间也可以作为数值类型来处理,例如时间比较,时间运算等