一、什么是面向对象?
面向对象(Object Oriented,OO)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。
二、对象应用
1.对象的声明和实例化
js中没有类,创建一个对象只要定义一个该对象的构造函数并通过它创建对象即可。使用函数对象this指针可以为对象动态添加属性。
例:
<script type="javascript/text">
function Card(name,address,phone){
this.name=name;
this.address=address;
this.phone=phone;
this.printCard=function(){
line1="Name:"this.name+"<br/>\n";
line2="Address:"this.address+"<br/>\n";
line3="Phone:"this.phone+"<br/>\n";
}
}
Jack=new Card("Jack","USA","0350-12345");
Jack.printCard();
</script>
2.对象的引用
可以通过变量操作对象。对象被new运算符创建出来以后要由一个变量引用,才可以对其进行调用操作。如上一个案例,Jack就引用了一个Card的实例。
三、对象层次
1.JS对象模型结构(JS组成)
语言核心:变量常量、运算符、表达式、数据类型、控制语句等
基本内置对象:string、date、math等
浏览器对象:window、navigator、location等
文档对象:document、form、image等
2.客户端对象层次
window | ||||||
history | document | location | toolbar | 其他 | ||
link | anchor | layer | form | applet | image | area |
text | fileupload | button | select | |||
textarea | checkbox | submit | radio | option | ||
password |
注:因为没法画图,所以用表格做的,第三行都来自于document对象,第四行全来自form表单,第五行textarea来自text,其余都来自select
3.浏览器对象模型
window
doucment frames history location navigator
window:
document:
frames:
history:
location:
navigator:
四、事件驱动与事件处理
1.事件与事件驱动
2.事件与事件处理代码关联
3.函数调用事件
4.代码调用事件
5.设置对象事件的方法
6.显示调用事件处理程序
7.事件处理程序返回值
8.事件与this运算符
五、常用事件
1.浏览事件
2.鼠标移动事件
3.鼠标单击事件
4.加载与卸载事件
5.得到焦点与失去焦点事件
6.键盘事件
7.提交与重置事件
8.选择与改变事件
六、总结