• javascript继承--原型链的 继承


    作者的话:原型链是JavaScript中相当重要的一个知识点,这里我使用了函数结构图,来帮助我更好的理解

     1 /*
     2 原型链继承方式:
     3     通过改变一个对象的原型对象的指向来继承另一个对象
     4     原理:
     5         我们知道,一个对象的实例会继承他的原型对象的所有属性和方法。所以说,如果,我们继承对象的原型对象,是被继承对象的原型对象的实例的话,那么,他不就继承了被继承对象的原型对象的所有属性和方法了么
     6 */
     7 //创建一个被继承对象,并给他两个属性
     8 function a(){
     9     this.name = "兔子只吃胡萝卜";
    10     this.age=12;
    11 }
    12 
    13 /*
    14     利用构造方法来创建继承对象
    15 */
    16 //创建一个继承对象,这里我们不给他设置任何属性
    17 function b(){
    18 }
    19 //我们让继承对象的原型对象得到被继承对象的实例
    20 b.prototype = new a();
    21 //我们为继承对象创建一个实例
    22 var b1 = new b();
    23 console.log(b1.name);//"兔子只吃胡萝卜"
    24 console.log(b1.age);//12
    25 
    26 /*
    27     直接创建继承对象的实例
    28 */
    29 var c = {
    30 };
    31 c.__proto__ = new a();
    32 console.log(c.name);//"兔子只吃胡萝卜"
    33 console.log(c.age);//12

    原型链继承中,存在着缺陷,其中,最明显的缺陷就是在使用引用类型的时候,会导致原型对象中,引用的数据发生改变,从而影响了我们需要使用的数据

  • 相关阅读:
    KMP算法
    找出第二大的数
    webpack 3 优化
    CocoaPods安装
    自适应水平垂直居中
    找出两个数组中都有,并且重复次数最多的元素
    swift 笔记
    Promise 用es5的基础实现
    $.ajax仿axios封装
    js基础拖拽效果
  • 原文地址:https://www.cnblogs.com/tangwanzun/p/6023964.html
Copyright © 2020-2023  润新知