zoukankan      html  css  js  c++  java
  • prototype原型的理解

      function A (){
        this.name = "a";
        // this.bat = function(){
        //   alert(this.name)
        // }
      }
      A.prototype.bat = function(){
          alert(this.name)
        }
      function B(){
        A.call(this);
      }

    上面这种写法,B继承了A的方法与属性;如果B继续增加方法,A不会增加

      function A (){
        this.name = "a";
        // this.bat = function(){
        //   alert(this.name)
        // }
      }
      A.prototype.bat = function(){
          alert(this.name)
        }
      function B(){
        A.call(this);
      }
      B.prototype = A.prototype;

    上面这种写法,B继承了A的方法与属性,同时B的原型指向A的原型;如果B继续增加方法,A会自动增加

      B.prototype.newbat=function(){
        alert("c");    
      }
      var obj = new A();
      obj.newbat();
       

    前者中,obj没有新增方法;后者中,obj包含了新增的方法。

  • 相关阅读:
    mysql热备脚本
    linux系统编程-进程
    15-模块
    14-面向对象3
    13-面向对象2
    12-面向对象1
    02-对比两个文件的差异
    11-面向对象基础
    08-不定长函数
    07-缺省参数
  • 原文地址:https://www.cnblogs.com/xiaoguniang0204/p/12368920.html
Copyright © 2011-2022 走看看