JavaScript语言基础(四) 对象概念
?
Javacript是一个基于面向对象的语言。它可以用来模拟面向对象语言的特性,但其本质不是面向对象的语言。不过现在jquery和extjs的流行,多看看这些框架的源码,会发现他们将js面向对象的特性发挥到了极致。
关于此节详细可以参看w3school教程?http://www.w3school.com.cn/js/js_reference.asp?;这里只是抛个砖。
?
JavaScript中对象分为:
?
独立于宿主环境的?ECMAScript?实现提供的对象?
例如
Array
Boolean
Date
Number
String
RegExp
?
当然对象的使用与java类似,用new来实例化;这些基本对象也存在于java类似的自动装箱机制。例如
<html><head><title>test</title><script type="text/javascript">function test() {var param1 = false;alert(param1.toString());//Boolean对象的toString方法var param2 = 1.125;alert(param2.toFixed(2));//Number对象的四舍五入方法var param3 = "abcd";alert(param3.substring(1,2));//String对象的字符串截取}</script></head><body onload="test()"></body></html>?
还有另外两大类这里就不详说了,请参看w3c教程。
Browser?对象(BOM)
Window
Navigator
Screen
History
Location
?
HTML?DOM?对象
Document
Anchor
Area
Base
Body
Button
Canvas
Event
Form
Frame
Frameset
IFrame
Image
Input?Button
Input?Checkbox
Input?File
Input?Hidden
Input?Password
Input?Radio
Input?Reset
Input?Submit
Input?Text
Link
Meta
Object
Option
Select
Style
Table
TableCell
TableRow
Textarea
?
?
由?ECMAScript?实现提供的、独立于宿主环境的所有对象,在?ECMAScript?程序开始执行时出现?,其实就两个
?
Math对象就是解决数学问题的所有公式?。
?
Global对象是ECMAScript中最特别的对象,因为实际上它根本不存在,有点玩人的意思。大家要清楚,在ECMAScript中,不存在独立的函数,所有函数都必须是某个对象的方法。
类似于isNaN()、parseInt()和parseFloat()方法等,看起来都是函数,而实际上,它们都是Global对象的方法。而且Global对象的方法还不止这些。
?
?
所有非本地对象都是宿主对象?,简单的理解就是自定义的对象;这里将成为js的精髓所在。下节专门阐述.。