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持久性⑥ ...
随机推荐
- 如何获取url中文件的后缀名
这是今天给学生解答问题的时候学生问的一个问题,我就在班级里给学生整体讲了一下,现在做一下分享,大家一起学习!! $url = 'http://www.sina.com.cn/abc/de/fg.php ...
- One day one cf,Keep Wa away from me.
Codeforces Round #379 (Div. 2) A水,算字符个数 B水,贪心优先组成后者 C贪心尺取,以消耗排序change那个,然后贪心另一个 D对角线就是x0+y0 == x1+y1 ...
- 前端小课堂 js:函数的创建方式及区别
js 函数的创建大体有这几种方式: -1-函数表达式(函数字面量): 说白了就是把一个函数赋值给了一个变量. var fun1 = function(index){ alert(index); } f ...
- C语言之循环结构
程序结构: 顺序结构 条件结构(分支结构) if结构,if-else结构 ,多重if分支结构,switch结构 循环结构:做重复的事情 while循环,do..while循环和for循环. 写循环结构 ...
- .net 利用Emit将object转为DbParameter,DataTable转为List<>
先放测试结果图,测试的方法是拷贝了老赵的一个简单的性能计数器:CodeTimer.发现速度还是比利用反射来获取快了2倍左右的,将object转为DbParameter的反射方法我没写. ...
- JAVA设计模式初探之装饰者模式
定义:动态给一个对象添加一些额外的职责,就象在墙上刷油漆.使用Decorator模式相比用生成子类方式达到功能的扩充显得更为灵活.设计初衷:通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种 ...
- JavaScript面向对象轻松入门之抽象(demo by ES5、ES6、TypeScript)
抽象的概念 狭义的抽象,也就是代码里的抽象,就是把一些相关联的业务逻辑分离成属性和方法(行为),这些属性和方法就可以构成一个对象. 这种抽象是为了把难以理解的代码归纳成与现实世界关联的概念,比如小狗这 ...
- maven无法加载本地jar包以及maven项目打包后本地jar包没有打进项目的问题解决办法
1.首先设置依赖项,这样maven就会把该路径下的jar包导入项目引用 <dependency> <groupId>DPSDK-Manager</groupId> ...
- Android应用安全学习笔记前言
Android是基于Linux kernel的一个自由及开放源代码的操作系统,主要用于移动设备.在2011年第一季度超越了塞班系统跃居了全球第一.本系列作为分享的东西吧.比较基础. 文章也不知道会分为 ...
- iptables实用教程(二):管理链和策略
概念和原理请参考上一篇文章"iptables实用教程(一)". 本文讲解如果管理iptables中的链和策略. 下面的代码格式中,下划线表示是一个占位符,需要根据实际情况输入参数, ...