zoukankan      html  css  js  c++  java
  • js继承实例

    第一种方法:对象冒充(临时属性)

    借用临时属性,指向超类,末了删除

    function Person(name,gender){
    	this.name=name;
    	this.gender=gender;
    	this.report=function(){
    		alert(this.name);
    	}
    }
    
    function Employee(name,gender,employeeID){
    	this.method=Person;
    	this.method(name,gender);
    	delete this.method;
    	this.employeeID=employeeID;
    	this.getemployeeID=function(){
    		alert(this.employeeID);
    	}
    	var _this=this;
    	this.report=function(){
    		setInterval(function(){
    			alert(_this.employeeID+":"+_this.name);
    		},1000)
    	}
    	
    }
    var jj=new Employee("jj","男","24");
    jj.report();
    

    第二种方法:对象冒充(call,apply)

    function Person(name,gender){
    	this.name=name;
    	this.gender=gender;
    	this.report=function(){
    		alert(this.name);
    	}
    }
    
    function Employee(name,gender,employeeID){
    	Person.apply(this,new Array(name));     //Person.call(this,name); 
    	this.employeeID=employeeID;
    	this.getemployeeID=function(){
    		alert(this.employeeID);
    	}
    	var _this=this;
    	this.report=function(){
    		setInterval(function(){
    			alert(_this.employeeID+":"+_this.name);
    		},1000)
    	}
    	
    }
    var jj=new Employee("jj","男","24");
    jj.report();
    

    第三种方法:原型链的方式(这种方式实例化子类时不能将参数传给父类)

    最后,总结一下自认为较好的继承实现方式,成员变量采用对象冒充方式,成员方法采用原型链方式,

  • 相关阅读:
    进程的由来
    进程管理逻辑图
    OS的特征

    4.6 路由相关
    设计测试用例时应该考虑哪些方面,即不同的测试用例针对那些方面进行测试?
    如何测试一个纸杯?
    软件产品质量特性是什么?
    一个京东登录的安全漏洞
    文章、书阅读
  • 原文地址:https://www.cnblogs.com/zhangwenkan/p/4268424.html
Copyright © 2011-2022 走看看