- 浏览: 148989 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (137)
- JavaScript (23)
- get post (0)
- SSH (4)
- Hibernate (1)
- cmd (2)
- 火狐 IE (1)
- 中英文环境模板下载 (1)
- 日期 (0)
- 其他总结 (5)
- 正则校验 (3)
- Sql Server (0)
- FreeMarker (1)
- 继承 (1)
- SQL (2)
- ORACLE -- SQL Server -- Access 常见Sql语句的区别 (1)
- ORACLE -- SQL Server -- Access 常见Sql语句的区别 (0)
- 解决int和Integer不能互转 (0)
- 原子类 (1)
- Final,finally,finalize的区别 (1)
- Web前端 (12)
- Reader InputStream (1)
- 线程 (1)
- JDBC (1)
- AJAX (3)
- Linux (2)
- 素数 (1)
- 接口-----继承 (1)
- 数据库查询性能优化 (1)
- Spring MVC3 深入了解 (1)
- JS (18)
- log4j简介 (1)
- Java序列化的机制和原理 (0)
- allowTransparency属性 (1)
- 测试类 (1)
- CSS (14)
- JQuery (10)
- 多线程 (1)
- 数据库 (2)
- Spring 注解 (1)
- JSTL标签库 (1)
- HTML (8)
- 界面设计 (4)
- 测试 (4)
- 职业生涯 (1)
- 数据可视化 (1)
- UI设计 (3)
- eclipse怎样生成javadoc (2)
- redis memcache 比较 (1)
- Windows 8系统IE10无法安装Flash Player插件的解决办法 (1)
- IE7 问题 (1)
- 常用JS验证 (1)
- Hadoop,MapReduce学习步骤 (1)
- 开始-运行-命令大全 (1)
- jQuery与ExtJS优缺点比较 (1)
- Oracle (1)
- 文档转换 (1)
- Maven与Ant比较 (1)
最新评论
-
谁说我不是会员:
很给力的文章,通俗易懂
Get请求和Post请求的区别 -
Spirit_eye:
请问一个图片按钮怎么置灰
按钮置灰跟按钮不显示
js继承的几种实现方法
[size=x-small]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> New Document </title> <script type="text/javascript"> /* <!-- --------------继承的第一种方式:对象冒充------ --> function Parent(name){ this.name = name; this.showInfo = function(){ document.write(name); document.write("</br>"); } } function Children(name, pwd){ //下面三行代码实现了子对象和父对象指向同一个引用 //关键的代码 this.method = Parent;this.method(name);delete this.method; this.pwd = pwd;this.showMsg = function(){ document.write(this.pwd); document.write("</br>"); } } var parent = new Parent("John"); var child = new Children("Bob", 123); parent.showInfo(); // child.showInfo(); child.showMsg(); document.write(""); document.write("</br>"); //call方法,是function里的一个方法。 //------------------call方法简单示例---------------- function test(str) { document.write(this.name + "," + str+"</br>"); } var person = new Object(); person.name = "anllin"; //相当于调用了test方法test.call(person, "welcome"); //将person赋给了test里的this。 document.write(""); document.write("</br>"); */ /* //-------------继承的第二种方式,call方法--------------------- function Father(name){ this.name = name; this.showName = function(){ document.write(this.name + "<br />"); } } function Sub(name, pwd){ //关键的代码 :this是方法执行时上下文相关对象,name是传给Father方法的参数 Father.call(this, name); this.name = name; this.pwd = pwd; this.showPwd = function(){ document.write(this.pwd+"<br />"); } } var father = new Father("Father's name"); var sub = new Sub("Sub's name", 123456); father.showName(); sub.showName(); sub.showPwd(); document.write(""); document.write("<br />"); */ /* //--------------继承的第三种方式,apply方法------------------ function Mother(name){ this.name = name; this.showName = function(){ document.write(this.name + "</br>"); } } function Daugther(name, pwd){ //关键的代码 : 第一个参数是方法执行时上下文相关对象,第二个参数是一个参数数组。 Mother.apply(this, new Array(name)); this.pwd = pwd; this.showPwd = function(){ document.write(this.pwd + "<br>"); } } var mother = new Mother("Mother’s name"); var daugther = new Daugther("Daugther's name", 654321); mother.showName(); daugther.showName(); daugther.showPwd(); document.write(""); document.write("</br>"); */ /* //----------继承的第四种方式,prototype chain方式---------- //缺点:无法给构造函数传参数。 function Human(){ } Human.prototype.name = "human'name"; Human.prototype.showName = function(){ document.write(this.name+"<br>"); } function Student() { } //关键的代码 Student.prototype = new Human(); Student.prototype.password = 456789; Student.prototype.showPwd = function(){ document.write(this.password + "<br>"); } var human = new Human(); var student = new Student(); student.name = "student'name "; human.showName(); student.showName(); student.showPwd(); document.write(""); document.write("</br>"); */ /* //-------------继承的第五种方式,混合方式--------------- function FatherClass(name){ this.name = name; } FatherClass.prototype.showName = function(){ document.write(this.name + "<br>"); } function SubClass(name, pwd){ //关键的代码 FatherClass.call(this,name); this.pwd = pwd; } //关键的代码 SubClass.prototype = new FatherClass; SubClass.prototype.showPwd = function(){ document.write(this.pwd + "<br>"); } var f = new FatherClass("FatherClass"); var s = new SubClass("SubClass", 45678); f.showName(); s.showName(); s.showPwd(); */ </script> </head> <body> </body> </html> [/size]
发表评论
-
web前端页面性能优化小结
2014-04-25 10:21 581web前端页面性能优化小 ... -
jQuery与ExtJS优缺点比较
2014-03-18 11:36 1991jQuery与ExtJS优缺点比较 jQuery 主页:h ... -
LABjs、RequireJS、SeaJS 哪个最好用?为什么?
2014-03-14 11:15 553LABjs、RequireJS、SeaJS 哪 ... -
offsetHeight, clientHeight与scrollHeight的区别
2014-01-22 14:24 628offsetHeight, clientHeight与scro ... -
表单提交后不刷新当前页面
2014-01-17 15:28 1206<form name='form1' id='for ... -
input失去焦点和获得焦点jquery焦点事件
2014-01-17 14:47 950input失去焦点和获得焦点jquery焦点事件 input ... -
html5 在IE6/IE7/IE8中使用html5标签
2014-01-13 11:26 4949html5 在IE6/IE7/IE8中使用html5标签 h ... -
李炎恢--JS视频
2013-05-21 15:40 750李炎恢--JS视频 http://wenku.baidu.co ... -
SeaJS-----GitHub Issues
2013-05-20 16:17 720SeaJS 是直接通过 GitHub Issues 来管理, ... -
CMD 模块定义规范
2013-05-15 10:45 300CMD 模块定义规范 https://github.co ... -
Javascript模块化编程(三):require.js的用法
2013-05-15 10:44 485Javascript模块化编程(三):require.js的 ... -
Sea.js 手册与文档
2013-05-15 09:30 553Sea.js 手册与文档 http://www.zhang ... -
sea.js 小记
2013-05-14 11:38 746sea.js 小记 看目录结构,代码不算多,命名划分很清晰, ... -
jQuery 实现多级下拉菜单导航
2013-03-13 11:39 4851JavaScript 实例教程 – jQuery 实现多级下拉 ... -
JS睡眠function
2013-03-05 11:37 1774JS睡眠function function sle ... -
iframe高度动态自适应
2013-03-04 14:37 564iframe高度动态自适应 http://www.cnbl ... -
JS如何创建对象及实现继承
2013-03-04 14:36 577JS如何创建对象及实现继承 【原型】 1. 什么 ... -
打印页面指定区域的js源码
2012-12-05 14:44 643<script type="text/ ... -
一道基础例题的思考
2012-12-05 14:30 633引用 <script type="text/j ... -
pager-taglib -- 分页标签用法
2012-08-09 10:10 757pager-taglib -- 分页标签用法 Usin ...
相关推荐
【JavaScript的9种继承实现方式归纳】js实现继承的几种方式.pdf
NULL 博文链接:https://raychase.iteye.com/blog/1337415
javascript的几种继承方法介绍_.docx
JavaScript中的几种继承方法示例 1.原型链继承 原理: 子类原型指向父类实例对象实现原型共享,即Son.prototype = new Father()。 这里先简单介绍下原型 js中每个对象都有一个__proto__属性,这个属性指向的...
JS继承的几种方式的附录源码
主要介绍了JS实现继承的几种常用方式,结合实例形式分析了JavaScript继承的四种常见实现方式,包括原型链继承、构造继承、组合继承及寄生组合继承,需要的朋友可以参考下
深入JS继承 目录 前言准备总结继承的n种方式原型式继承原型链式继承借用构造函数(类式继承...撇开ES6 class不谈,传统的继承方式你知道几种?每种实现原理是什么,优劣点能谈谈吗。这里就结合具体例子,按照渐进式的
配合我的博文 js 之几种继承的方式一起学习,欢迎大家交流指正
js是门灵活的语言,实现一种功能往往有多种做法,ECMAScript没有明确的继承机制,而是通过模仿实现的,根据js语言的本身的特性,js实现继承有以下通用的几种方式 1. 使用对象冒充实现继承(该种实现方式可以实现多继承)...
js代码-js继承的几种方式
开篇 从’严格’意义上说,javascript并不是一门真正的面向对象语言。...为何需要利用javascript实现继承 早期pc机器的性能确实不敢恭维,所有的压力全在服务器端,客户端浏览器纯属摆设。再加上那时流行的
本文实例讲述了js实现继承的5种方式。分享给大家供大家参考,具体如下: 1、继承第一种方式:对象冒充 function Parent(username){ this.username = username; this.hello = function(){ alert(this....
本文给大家简单介绍了下如何在javascript中实现继承的几种方法,十分的实用,有需要的小伙伴可以参考下。
主要介绍了详述JavaScript实现继承的几种方式(推荐)的相关资料,需要的朋友可以参考下
1.原型链继承:构造函数、原型和实例的关系:每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针。确认原型和实例之间的关系用instanceof。 原型链继承...
Javascript中的几种继承方式对比分析_.docx
涵盖了几种常用的 webBrowser执行javascript的方法, execScript方式: NavigateScript方式: 其中需要作如下设置 由于visual studio2005 中WebBrowser控件已经实现了IDocHostUIHandler,所以 只要把应用程序属性类的...