js原生设计模式——2面向对象编程之继承—new+call(this)组合式继承
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>groupInherit</title>
    <script type="text/javascript">
    //声明父类
    function superClass(name){
        this.name = name;
        this.books = ['html','css','js'];
    }
    superClass.prototype.getName = function(){
        console.log(this.name);
    }
    superClass.prototype.getBooks = function(){
        console.log(this.books);
    }
    //声明子类
    function subClass(name,time){
        superClass.call(this,name);//让子this指向父this,后面带的是父类需传入的参数name
        this.time = time;
    }
    subClass.prototype = new superClass();//类式继承
    subClass.prototype.getTime = function(){
        console.log(this.time);
    }
    //测试用例:实例化对象测试
    var test1 = new subClass('js book',2015);
    var test2 = new subClass('css book',2014);
    test1.books.push('php');//test2插入的数据'php'不影响test1
console.log(test1.name);      //'js book'
    console.log(test1.books);   //["html", "css", "js", "php"] 
    test1.getName();              //'js book'
    test1.getBooks();           //["html", "css", "js", "php"]
    test1.getTime();            //2015
console.log(test2.name);      //'css book'
    console.log(test2.books);   //["html", "css", "js"]
    test2.getName();              //'css book'
    test2.getBooks();           //["html", "css", "js"]
    test2.getTime();            //2014
//本例已经通过验证,this属性和原型方法均能访问
    </script>
</head>
<body>
    
</body>
</html>
js原生设计模式——2面向对象编程之继承—new+call(this)组合式继承的更多相关文章
- js原生设计模式——2面向对象编程之继承—原型继承(类式继承的封装)
		
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
 - js原生设计模式——2面向对象编程之继承—多继承
		
1.单对象克隆 <!DOCTYPE html><html lang="en"><head> <meta charset=" ...
 - js原生设计模式——2面向对象编程之继承—call(this)构造函数式继承
		
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
 - js原生设计模式——2面向对象编程之继承—new类式继承
		
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
 - js原生设计模式——2面向对象编程之js原生的链式调用
		
技巧点:对象方法中返回当前对象就可以链式调用了,即方法中写return this; <!DOCTYPE html><html lang="en"><h ...
 - js原生设计模式——2面向对象编程之闭包2
		
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
 - js原生设计模式——2面向对象编程之闭包1
		
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
 - js原生设计模式——7原型模式之new+call(this)组合应用再探讨实例
		
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
 - js原生设计模式——12装饰者模式
		
1.面向对象模式装饰者 <!DOCTYPE html><html lang="en"><head> <meta charset=&q ...
 
随机推荐
- we7调用模板如何区分栏目页与详细页
			
<a href='/xsdt/0000-00-00-00.html?id=<%# Eval("ID")%>'> 0000-00-00-00.html传参数来 ...
 - gridview中button事件处理
			
http://msdn.microsoft.com/zh-cn/library/bb907626.aspx 再结合如下: protected void GridView1_RowCommand(obj ...
 - java中从含反斜杠路径截取文件名的方法
			
例如:获取到的文件路径为C:\Documents and Settings\Leeo\My Documents\logo.gif现在想要取得图片的名称logo.gif,我们知道反斜杠“\”是转义字符, ...
 - 手把手教你使用startuml画用例图
			
转自:http://www.2cto.com/os/201502/377091.html 最近准备研究下volley的源码,但看了网上一些大牛的博客都是配合图这样看起来更直观,分析起来逻辑也很好,什么 ...
 - 一道变态的js题
			
一道腾讯js面试题 题目如下: f = function() {return true;}; g = function() {return false;}; (function() { if (g() ...
 - Mysql基于GTID主从复制
			
Mysql5.6基于GTID全局事务的复制 什么是GTID? GTID(Global Transaction Identifiers)是全局事务标识 当使用GTIDS时,在主上提交的每一个事务都会 ...
 - (简单) POJ 3254 Corn Fields,状压DP。
			
Description Farmer John has purchased a lush new rectangular pasture composed of M by N (1 ≤ M ≤ 12; ...
 - curl讲解第一篇---入门和基本使用
			
概念 它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP. curl同样支持HTTPS认证,HTTP POST方法, ...
 - runtime - associated(关联)
			
category和associative作为objective-c的扩展机制的两个特性,category用来扩展类的方法,associative可以用来扩展类的属性.使用associative需要导入 ...
 - Mysql 常用引擎的特点及选择使用策略
			
Mysql 常用引擎的特点及选择使用策略 Mysql数据库常用存储引擎 Mysql数据库是一款开源的数据库,支持多种存储引擎的选择,比如目前最常用的存储引擎有:MyISAM,InnoDB,Memory ...