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() | 计算正弦值 余弦值 |
asin(), acos() | 计算反正弦,反余弦值 |
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对象进行统一管理,在一些特殊的环境中,时间也可以作为数值类型来处理,例如时间比较,时间运算等
Date 对象方法
FF: Firefox, IE: Internet Explorer
方法 | 描述 | FF | IE |
---|---|---|---|
Date() | 返回当日的日期和时间。 | 1 | 3 |
getDate() | 从 Date 对象返回一个月中的某一天 (1 ~ 31)。 | 1 | 3 |
getDay() | 从 Date 对象返回一周中的某一天 (0 ~ 6)。 | 1 | 3 |
getMonth() | 从 Date 对象返回月份 (0 ~ 11)。 | 1 | 3 |
getFullYear() | 从 Date 对象以四位数字返回年份。 | 1 | 4 |
getYear() | 请使用 getFullYear() 方法代替。 | 1 | 3 |
getHours() | 返回 Date 对象的小时 (0 ~ 23)。 | 1 | 3 |
getMinutes() | 返回 Date 对象的分钟 (0 ~ 59)。 | 1 | 3 |
getSeconds() | 返回 Date 对象的秒数 (0 ~ 59)。 | 1 | 3 |
getMilliseconds() | 返回 Date 对象的毫秒(0 ~ 999)。 | 1 | 4 |
getTime() | 返回 1970 年 1 月 1 日至今的毫秒数。 | 1 | 3 |
getTimezoneOffset() | 返回本地时间与格林威治标准时间 (GMT) 的分钟差。 | 1 | 3 |
getUTCDate() | 根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。 | 1 | 4 |
getUTCDay() | 根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。 | 1 | 4 |
getUTCMonth() | 根据世界时从 Date 对象返回月份 (0 ~ 11)。 | 1 | 4 |
getUTCFullYear() | 根据世界时从 Date 对象返回四位数的年份。 | 1 | 4 |
getUTCHours() | 根据世界时返回 Date 对象的小时 (0 ~ 23)。 | 1 | 4 |
getUTCMinutes() | 根据世界时返回 Date 对象的分钟 (0 ~ 59)。 | 1 | 4 |
getUTCSeconds() | 根据世界时返回 Date 对象的秒钟 (0 ~ 59)。 | 1 | 4 |
getUTCMilliseconds() | 根据世界时返回 Date 对象的毫秒(0 ~ 999)。 | 1 | 4 |
parse() | 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。 | 1 | 3 |
setDate() | 设置 Date 对象中月的某一天 (1 ~ 31)。 | 1 | 3 |
setMonth() | 设置 Date 对象中月份 (0 ~ 11)。 | 1 | 3 |
setFullYear() | 设置 Date 对象中的年份(四位数字)。 | 1 | 4 |
setYear() | 请使用 setFullYear() 方法代替。 | 1 | 3 |
setHours() | 设置 Date 对象中的小时 (0 ~ 23)。 | 1 | 3 |
setMinutes() | 设置 Date 对象中的分钟 (0 ~ 59)。 | 1 | 3 |
setSeconds() | 设置 Date 对象中的秒钟 (0 ~ 59)。 | 1 | 3 |
setMilliseconds() | 设置 Date 对象中的毫秒 (0 ~ 999)。 | 1 | 4 |
setTime() | 以毫秒设置 Date 对象。 | 1 | 3 |
setUTCDate() | 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。 | 1 | 4 |
setUTCMonth() | 根据世界时设置 Date 对象中的月份 (0 ~ 11)。 | 1 | 4 |
setUTCFullYear() | 根据世界时设置 Date 对象中的年份(四位数字)。 | 1 | 4 |
setUTCHours() | 根据世界时设置 Date 对象中的小时 (0 ~ 23)。 | 1 | 4 |
setUTCMinutes() | 根据世界时设置 Date 对象中的分钟 (0 ~ 59)。 | 1 | 4 |
setUTCSeconds() | 根据世界时设置 Date 对象中的秒钟 (0 ~ 59)。 | 1 | 4 |
setUTCMilliseconds() | 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。 | 1 | 4 |
toSource() | 返回该对象的源代码。 | 1 | - |
toString() | 把 Date 对象转换为字符串。 | 1 | 4 |
toTimeString() | 把 Date 对象的时间部分转换为字符串。 | 1 | 4 |
toDateString() | 把 Date 对象的日期部分转换为字符串。 | 1 | 4 |
toGMTString() | 请使用 toUTCString() 方法代替。 | 1 | 3 |
toUTCString() | 根据世界时,把 Date 对象转换为字符串。 | 1 | 4 |
toLocaleString() | 根据本地时间格式,把 Date 对象转换为字符串。 | 1 | 3 |
toLocaleTimeString() | 根据本地时间格式,把 Date 对象的时间部分转换为字符串。 | 1 | 3 |
toLocaleDateString() | 根据本地时间格式,把 Date 对象的日期部分转换为字符串。 | 1 | 3 |
UTC() | 根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。 | 1 | 3 |
valueOf() | 返回 Date 对象的原始值。 | 1 | 4 |
http://www.cnblogs.com/towerking/p/3220410.html
refer
1 http://pan.baidu.com/share/link?shareid=3768958994&uk=3860786047&fid=1123754676 75页
2 http://www.cnblogs.com/amy2011/archive/2013/06/14/3134996.html js-对象
3 http://www.w3school.com.cn/js/pro_js_object_types.asp ECMAScript 对象类型