最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript實現(xiàn)多態(tài)和繼承的封裝操作示例

 更新時間:2018年08月20日 11:13:00   作者:kkun  
這篇文章主要介紹了JavaScript實現(xiàn)多態(tài)和繼承的封裝操作,結合實例形式分析了javascript中多態(tài)與繼承的實現(xiàn)及封裝相關操作技巧,需要的朋友可以參考下

本文實例講述了JavaScript實現(xiàn)多態(tài)和繼承的封裝操作。分享給大家供大家參考,具體如下:

封裝Encapsulation

如下代碼,這就算是封裝了

(function (windows, undefined) {
  var i = 0;//相對外部環(huán)境來說,這里的i就算是封裝了
})(window, undefined);

繼承Inheritance

(function (windows, undefined) {
  //父類
  function Person() { }
  Person.prototype.name = "name in Person";
  //子類
  function Student() { }
  Student.prototype = new Person();      //修復原型
  Student.prototype.constructor = Student;  //構造函數(shù)
  Student.prototype.supr = Person.prototype; //父類
  //創(chuàng)建子類實例
  var stu = new Student();
  Student.prototype.age = 28;
  Student.prototype.name = "name in Student instance";
  //打印子類成員及父類成員
  console.log(stu.name); //name in Student instance
  console.log(stu.supr.name); //name in Person
  console.log(stu.age); //28
})(window, undefined);

使用在線HTML/CSS/JavaScript代碼運行工具 http://tools.jb51.net/code/HtmlJsRun,運行結果如下:

多態(tài)Polymorphism

有了繼承,多態(tài)就好辦了

//這就是繼承了
(function (windows, undefined) {
  //父類
  function Person() { }
  Person.prototype.name = "name in Person";
  Person.prototype.learning = function () {
    console.log("learning in Person")
  }
  //子類
  function Student() { }
  Student.prototype = new Person();      //修復原型
  Student.prototype.constructor = Student;  //構造函數(shù)
  Student.prototype.supr = Person.prototype; //父類
  Student.prototype.learning = function () {
    console.log("learning in Student");
  }
  //工人
  function Worker() { }
  Worker.prototype = new Person();      //修復原型
  Worker.prototype.constructor = Worker;  //構造函數(shù)
  Worker.prototype.supr = Person.prototype; //父類
  Worker.prototype.learning = function () {
    console.log("learning in Worker");
  }
  //工廠
  var personFactory = function (type) {
    switch (type) {
      case "Worker":
        return new Worker();
        break;
      case "Student":
        return new Student();
        break;
    }
    return new Person();
  }
  //客戶端
  var person = personFactory("Student");
  person.learning(); //learning in Student
  person = personFactory("Worker");
  person.learning(); //learning in Worker
})(window, undefined);

使用在線HTML/CSS/JavaScript代碼運行工具 http://tools.jb51.net/code/HtmlJsRun,運行結果如下:

更多關于JavaScript相關內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯誤與調(diào)試技巧總結》、《JavaScript數(shù)據(jù)結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數(shù)學運算用法總結

希望本文所述對大家JavaScript程序設計有所幫助。

相關文章

  • js 彈出框只彈一次(二次修改之后的)

    js 彈出框只彈一次(二次修改之后的)

    彈出框只彈一次,看到網(wǎng)上也就寫的很多,可以直接使用的沒有幾個,下面與大家分享個修改之后的代碼,需要的朋友可以參考下
    2013-11-11
  • JS裝飾者模式和TypeScript裝飾器

    JS裝飾者模式和TypeScript裝飾器

    學習的目的是對裝飾者模式模式有進一步的理解,并運用在自己的項目中;對TypeScript裝飾器的理解,更好的使用裝飾器,例如在nodejsweb框架中、vue-property-decorator中,或者是自定義裝飾器,能熟練運用并掌握其基本的實現(xiàn)原理。
    2021-04-04
  • 微信小程序?qū)崿F(xiàn)基于三元運算驗證手機號/姓名功能示例

    微信小程序?qū)崿F(xiàn)基于三元運算驗證手機號/姓名功能示例

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)基于三元運算驗證手機號/姓名功能,涉及三元運算符的判定及字符串正則驗證相關操作技巧,需要的朋友可以參考下
    2019-01-01
  • javascript 函數(shù)調(diào)用規(guī)則

    javascript 函數(shù)調(diào)用規(guī)則

    構造器函數(shù)以大寫字母開頭是一個好的習慣,這可以作為一個提醒,讓你在調(diào)用的時候不要忘記前面的new運算符.
    2009-08-08
  • 使用Perl和庫WWW::Curl的爬蟲程序步驟

    使用Perl和庫WWW::Curl的爬蟲程序步驟

    本文給大家分享在Perl中使用WWW::Curl庫編寫爬蟲程序的步驟和方法,感興趣的朋友跟隨小編一起看看吧
    2025-03-03
  • javascript 初學教程及五子棋小程序的簡單實現(xiàn)

    javascript 初學教程及五子棋小程序的簡單實現(xiàn)

    下面小編就為大家?guī)硪黄猨avascript 初學教程及五子棋小程序的簡單實現(xiàn)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • JavaScript 預解析的4種實現(xiàn)方法解析

    JavaScript 預解析的4種實現(xiàn)方法解析

    這篇文章主要介紹了JavaScript 預解析的4種實現(xiàn)方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • 微信小程序wx.navigateTo中events屬性實現(xiàn)頁面間通信傳值,數(shù)據(jù)同步

    微信小程序wx.navigateTo中events屬性實現(xiàn)頁面間通信傳值,數(shù)據(jù)同步

    這篇文章主要介紹了微信小程序wx.navigateTo中events屬性實現(xiàn)頁面間通信傳值,數(shù)據(jù)同步,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • 深入學習js函數(shù)的隱式參數(shù) arguments 和 this

    深入學習js函數(shù)的隱式參數(shù) arguments 和 this

    這篇文章主要介紹了 深入學習js函數(shù)的隱式參數(shù) arguments 和 this,arguments是一個類數(shù)組結構,它保存了調(diào)用時傳遞給函數(shù)的所有實參;this是函數(shù)執(zhí)行時的上下文對象, 這個對象有些讓人感到困惑的行為。 下面分別對他們進行討論。,需要的朋友可以參考下
    2019-06-06
  • JS創(chuàng)建對象的十種方式總結

    JS創(chuàng)建對象的十種方式總結

    面向?qū)ο笫且环N重要的編程范式,如何靈活的創(chuàng)建對象,是對編程基本功的考驗,本來我們來探討一下JavaScript中創(chuàng)建對象的十種方式,感興趣的小伙伴可以了解下
    2023-10-10

最新評論

五台县| 阿合奇县| 手游| 庆云县| 彝良县| 大厂| 秦安县| 黔西| 武汉市| 合江县| 永善县| 云龙县| 江口县| 色达县| 天柱县| 武鸣县| 呼图壁县| 新源县| 扎赉特旗| 东乌珠穆沁旗| 探索| 聂荣县| 安阳市| 仙桃市| 和林格尔县| 黎城县| 弥勒县| 长汀县| 巴里| 抚顺县| 深水埗区| 乐昌市| 大厂| 诏安县| 永胜县| 九台市| 宜都市| 宕昌县| 漠河县| 利津县| 恩施市|