accp8.0转换教材第8章JavaScript对象及初识面向对象理解与练习
JavaScript数据类型,对象,构造函数,原型对象,初识原型链,对象继承
一.单词部分
①object父类②constructor构造函数③instance实例④call调用
⑤apply应用⑥combination组合⑦inheritance继承
二.预习部分
1.简述创建对象的两种方法,以及两者的区别
new 和 字面量赋值
前者要用点.添加属性和方法
后者直接调用
2.简述使用构造函数创建实例的步骤
①创建一个新对象
②将构造函数的作用域赋值给新对象
③执行构造函数代码块
④返回新对象
3.简述原型链在继承中的作用
它是实现继承的主要方法
三.上机部分
1.创建person对象
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <title>创建person对象</title> | |
| </head> | |
| <body> | |
| <div id="aa"></div> | |
| <script> | |
| var createTi=document.createElement("p"); | |
| var person=new Object(); | |
| person.name="郎晓明"; | |
| person.age="38"; | |
| person.job="中国内地男演员、歌手"; | |
| person.address="中国北京海淀区"; | |
| person.info=function () { | |
| var strr="姓名:"+this.name+"<br/>年龄:"+this.age+"<br/>工作:"+this.job+"<br/>住址:"+this.address; | |
| //document.write(strr); | |
| document.getElementById("aa").innerHTML=strr; | |
| } | |
| person.info(); | |
| </script> | |
| </body> | |
| </html> |
2.创建person构造函数
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <title>上机练习二</title> | |
| </head> | |
| <body> | |
| <div id="aa"></div> | |
| <script> | |
| function Person(name,age,job,address) { | |
| this.name=name; | |
| this.age=age; | |
| this.job=job; | |
| this.address=address; | |
| this.show=function() { | |
| var createTi=document.createElement("p"); | |
| var strr="姓名:"+this.name+"<br/>年龄:"+this.age+"<br/>工作:"+this.job+"<br/>住址:"+this.address; | |
| document.getElementById("aa").innerHTML=strr; | |
| } | |
| } | |
| function Pers(){ | |
| } | |
| //var newper=new Person("郎晓明","38","中国内地男演员、歌手","中国北京海淀区"); | |
| Pers.prototype.name1="陈东"; | |
| Pers.prototype.age1="20"; | |
| Pers.prototype.job1="IT"; | |
| Pers.prototype.address1="河南省"; | |
| Pers.prototype.showinn=function () { | |
| var createTi=document.createElement("p"); | |
| var strrr="姓名:"+this.name1+"<br/>年龄:"+this.age1+"<br/>工作:"+this.job1+"<br/>住址:"+this.address1; | |
| document.getElementById("aa").innerHTML=strrr; | |
| } | |
| var one=new Pers(); | |
| one.showinn(); | |
| //newper.show(); | |
| </script> | |
| </body> | |
| </html> |
3.创建person对象原型链
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <title>上机练习三</title> | |
| </head> | |
| <body> | |
| <div id="aa"></div> | |
| <script> | |
| function Person(nation,skinColor) { | |
| this.nation=nation; | |
| this.skinColor=skinColor; | |
| var aaa=document.getElementById("aa"); | |
| this.shownation=function () { | |
| var createTi=document.createElement("p"); | |
| var st="民族:"+this.nation; | |
| createTi.innerHTML=st; | |
| aaa.appendChild(createTi) | |
| } | |
| this.showskin=function () { | |
| var createTi1=document.createElement("p"); | |
| var st1="肤色:"+this.skinColor; | |
| createTi1.innerHTML=st1; | |
| aaa.appendChild(createTi1); | |
| } | |
| } | |
| function Woman() { | |
| Person.call(this,"满族","黑色"); | |
| this.sex="女"; | |
| } | |
| var sexa=document.getElementById("aa"); | |
| //Woman.prototype=new Person("汉族","黄色"); | |
| Woman.prototype.showsex=function () { | |
| var createTi3=document.createElement("p"); | |
| var st3="性别:"+this.sex; | |
| createTi3.innerHTML=st3; | |
| sexa.appendChild(createTi3); | |
| } | |
| //var per1=new Person("汉族","黄色"); | |
| var wo=new Woman(); | |
| wo.shownation(); | |
| wo.showskin(); | |
| wo.showsex(); | |
| </script> | |
| </body> | |
| </html> |
4.创建继承person的student子类
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <title>上机练习四</title> | |
| </head> | |
| <body> | |
| <div id="aa"></div> | |
| <script> | |
| function Person(name,chinese,math) { | |
| this.name=name; | |
| this.chinese=chinese; | |
| this.math=math; | |
| var aaa=document.getElementById("aa"); | |
| this.showname=function () { | |
| var createTi=document.createElement("p"); | |
| var st="姓名:"+this.name; | |
| createTi.innerHTML=st; | |
| aaa.appendChild(createTi) | |
| } | |
| this.showchinese=function () { | |
| var createTi1=document.createElement("p"); | |
| var st1="语文:"+this.chinese; | |
| createTi1.innerHTML=st1; | |
| aaa.appendChild(createTi1); | |
| } | |
| this.showmath=function () { | |
| var createTi2=document.createElement("p"); | |
| var st2="数学:"+this.math; | |
| createTi2.innerHTML=st2; | |
| aaa.appendChild(createTi2); | |
| } | |
| } | |
| function Student() { | |
| Person.call(this,"少君","56","96"); | |
| this.age="19"; | |
| } | |
| var sexa=document.getElementById("aa"); | |
| //Student.prototype=new Person("陈东","88","99"); | |
| Student.prototype.showage=function () { | |
| var createTi3=document.createElement("p"); | |
| var st3="年龄:"+this.age; | |
| createTi3.innerHTML=st3; | |
| sexa.appendChild(createTi3); | |
| } | |
| //var per1=new Person("汉族","黄色"); | |
| var stu=new Student(); | |
| stu.showname(); | |
| stu.showchinese(); | |
| stu.showmath(); | |
| stu.showage(); | |
| /*var ncm = new Person("陈东","88","99"); | |
| ncm.showname(); | |
| ncm.showchinese(); | |
| ncm.showmath();*/ | |
| </script> | |
| </body> | |
| </html> |
四.总结
1.对象分为内置对象和自定义对象
2.原型链是实现继承的主要方法
3.组合继承的思路是使用原型链实现对原型属性和方法的继承
欢迎提问,欢迎指错,欢迎讨论学习信息 有需要的私聊 发布评论即可 都能回复的
原文在博客园http://www.cnblogs.com/a782126844/有需要可以联系扣扣:2265682997
accp8.0转换教材第8章JavaScript对象及初识面向对象理解与练习的更多相关文章
- accp8.0转换教材第7章JavaScript操作DOM对象理解与练习
程序调试,chrome开发人员工具,DOM操作,节点和节点间的关系,节点信息,操作节点,获取元素 一.单词部分 ①alert警告②prompt提示③parentNode父节点④childNode子节点 ...
- accp8.0转换教材第10章Ajax和jQuery理解与练习
C/S (Client/Server)结构,即大家熟知的客户机和服务器结构. B/S(Browser/Server)结构即浏览器和服务器结构. 认识ajax .XMLHttpRequest.使用jqu ...
- 第五章 JavaScript对象及初识面向对象
第五章 JavaScript对象及初识面向对象 一.对象 在JavaScript中,所有事物都是对象,如字符串.数值.数组.函数等. 在JavaScript对象分为内置对象和自定义对象,要处理一些 ...
- accp8.0转换教材第11章JAjax加护扩展理解与练习
①杂记:前面有原生态JavaScript实现ajax这里又多了更简单的方法实现ajax ②$.get()方法的常用参数 参数 类型 说明 url String 必选,规定发送地址 data Plain ...
- accp8.0转换教材第9章JQuery相关知识理解与练习
自定义动画 一.单词部分: ①animate动画②remove移除③validity有效性 ④required匹配⑤pattern模式 二.预习部分 1.简述JavaScript事件和jquery事件 ...
- accp8.0转换教材第6章连接MySQL理解与练习
JDBC_ODBC,纯java方式连接mysql 1.单词部分 ①JDBCjava连接数据库②driver manager驱动③connection连接④statement声明 ⑤execute执行⑥ ...
- accp8.0转换教材第4章MySQL高级查询(二)理解与练习
知识点:EXISTS子查询.NOT EXISTS子查询.分页查询.UNION联合查询 一.单词部分 ①exist存在②temp临时的③district区域 ④content内容⑤temporary暂时 ...
- accp8.0转换教材第1章多线程理解与练习
一.单词部分: ①process进程 ②current当前的③thread线程④runnable可获取的 ⑤interrupt中断⑥join加入⑦yield产生⑧synchronize同时发生 二.预 ...
- accp8.0转换教材第5章事务、视图、索引、备份和恢复理解与练习
知识点:事务.视图.索引.数据库的备份和恢复 一.单词部分 ①transation事务②atomicity原子性③consistency一致性④isolation隔离性 ⑤durability持久性⑥ ...
随机推荐
- 写给Android App开发人员看的Android底层知识(2)
(五)AMS 如果站在四大组件的角度来看,AMS就是Binder中的Server. AMS全称是ActivityManagerService,看字面意思是管理Activity的,但其实四大组件都归它管 ...
- Android studio 3.0 引起的 outputFile sync failed:not vaild
我们大多使用 android studio 改变生成安装包命名会用以下方式: applicationVariants.all { variant -> variant.outputs.each ...
- 2.Java 加解密技术系列之 MD5
Java 加解密技术系列之 MD5 序 背景 正文 结束语 序 上一篇文章中,介绍了最基础的编码方式 — — BASE64,也简单的提了一下编码的原理.这篇文章继续加解密的系列,当然也是介绍比较基础的 ...
- WPF自动更新程序
WPF AutoUpdater 描述: WPF+MVVM实现的自动更新程序 支持更新包文件验证(比较文件MD5码) 支持区分x86与x64程序的更新 支持更新程序的版本号 支持执行更新策略 截图: 使 ...
- 这 5 个前端组件库,可以让你放弃 jQuery UI
欢迎大家持续关注葡萄城控件技术团队博客,更多更好的原创文章尽在这里~~ 在建立Web应用时,通常都需要用到一些有用的UI组件.无论应用中需要的是日历,滑块,图形或其它用于提升或简化用户交互的组件,那么 ...
- [转载]OpenStack OVS GRE/VXLAN网络
学习或者使用OpenStack普遍有这样的现象:50%的时间花费在了网络部分:30%的时间花费在了存储方面:20%的时间花费在了计算方面.OpenStack网络是不得不逾越的鸿沟,接下来我们一起尝 ...
- 点评阿里JAVA手册之编程规约(OOP 规约 、集合处理 、并发处理 、其他)
下载原版阿里JAVA开发手册 [阿里巴巴Java开发手册v1.2.0] 本文主要是对照阿里开发手册,注释自己在工作中运用情况. 本文难度系数为三星(★★★) 本文为第二篇 第一篇 点评阿里JAVA手 ...
- 新写的高仿Arcmap,要的拿去玩玩
本想着对所学的ArcGIS Engine开发作一个了结,于是乎写了这么一个仿照Arcmap的程序.我所见过的地理信息系统中,ArcGIS是功能最完善.二次开发最易上手的平台了(当然别提AutoCAD那 ...
- Java中设计模式之装饰者模式-3
装饰者模式: 动态地将责任附加到对象上.若要扩展功能,装饰者提供了比继承更加有弹性的替代方案. 装饰者核心:实现功能组合 继承与组合区别: 继承 继承是给一个类添加行为的比较有效的途径.通过使用继承, ...
- C++经典绘图工具EasyX
EasyX简介 EasyX 在学习C语言时,很多同学抱怨说C只能写最简单的Demo程序,通过printf在屏幕上打印字符来验证代码.这样的编程很枯燥,一点没觉得自己在设计软件. EasyX是针对C++ ...