中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

基于構造函數的五種繼承方法小結

發布時間:2020-09-26 07:57:06 來源:腳本之家 閱讀:136 作者:jingxian 欄目:web開發

1.使用call或apply綁定構造函數

  animal.apply(this.arguments)

2.使用prototype屬性  

  Cat.prototype = new Animal();

  Cat.prototype.constructor = Cat;

  var cat1 = new Cat("大毛","黃色");

  alert(cat1.species); // 動物

3.直接集成prototype屬性

  function Animal(){ }

  Animal.prototype.species = "動物";

 

  Cat.prototype = Animal.prototype;

  Cat.prototype.constructor = Cat;

  var cat1 = new Cat("大毛","黃色");

  alert(cat1.species); // 動物

4.利用空對象作為中介

  var F = function(){};

  F.prototype = Animal.prototype;

  Cat.prototype = new F();

   Cat.prototype.constructor = Cat;

  將上面的方法封裝成一個函數,便于使用:

    function extend(Child, Parent) {

      var F = function(){};

      F.prototype = Parent.prototype;

      Child.prototype = new F();

      Child.prototype.constructor = Child;

      Child.uber = Parent.prototype;

    }

5.拷貝繼承

function extend2(Child, Parent) {

    var p = Parent.prototype;

    var c = Child.prototype;

    for (var i in p) {

      c[i] = p[i];

      }

    c.uber = p;

  }

這個函數的作用,就是將父對象的prototype對象中的屬性,一一拷貝給Child對象的prototype對象。

以上這篇基于構造函數的五種繼承方法小結就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

浮梁县| 天长市| 巴彦县| 马山县| 中阳县| 昭苏县| 长寿区| 嫩江县| 南郑县| 鸡西市| 商河县| 西乌| 五台县| 武隆县| 台东县| 怀远县| 宾阳县| 蒙山县| 贵德县| 阿拉善右旗| 印江| 伊通| 城固县| 凤庆县| 汉源县| 瑞金市| 长寿区| 神农架林区| 晋江市| 鸡西市| 黄龙县| 阳东县| 永新县| 阿克苏市| 封丘县| 宁阳县| 黑山县| 通海县| 新巴尔虎右旗| 阿瓦提县| 五大连池市|