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

推薦JavaScript實(shí)現(xiàn)繼承的最佳方式

 更新時(shí)間:2014年11月11日 15:44:29   投稿:hebedich  
本文是介紹了實(shí)用call方法結(jié)合原型鏈方法來(lái)實(shí)現(xiàn)javascript繼承的最佳方式,非常的實(shí)用,有需要的小伙伴可以參考下

   實(shí)現(xiàn)JavaScript繼承的最簡(jiǎn)單的方式是call方法(或者apply方法)及原型鏈方法,但這兩種方法都有缺陷,而其混合體就是很好的繼承實(shí)現(xiàn)方式。下面舉例說(shuō)明:

復(fù)制代碼 代碼如下:

function Animal(age){
    this.age = age;
}
Animal.prototype.sayAge = function(){
    window.alert("My age is "+this.age+"!");
};
function Dog(age,name){
    Animal.call(this,age);
    this.name = name;
}
Dog.prototype = new Animal();
Dog.prototype.sayName = function(){
    window.alert("I am a "+this.name+"!");
};
var dog = new Dog(15,"dog");
dog.sayName();
dog.sayAge();

    對(duì)于類Animal來(lái)說(shuō),它有一個(gè)字段屬性age及函數(shù)屬性sayAge,sayAge方法的定義采用的是原型方式。Dog類要繼承Animal,其字段屬性除了age外還有name,通過(guò)Animal.call(this,age);可以實(shí)現(xiàn)Dog繼承Animal的字段屬性age并將其初始化了。call方法的第一個(gè)參數(shù)為繼承的類的this指針,第二個(gè)參數(shù)為Animal類的構(gòu)造函數(shù)的參數(shù)。實(shí)際上,只是通過(guò)call方法就可以實(shí)現(xiàn)繼承,但唯一的要求是父類的函數(shù)屬性要在構(gòu)造函數(shù)中定義,這對(duì)于這里的函數(shù)屬性使用原型方式定義來(lái)說(shuō)就不適合了(采用原型方式定義函數(shù)屬性比在構(gòu)造函數(shù)內(nèi)定義更直觀一些)。要想繼承Animal的原型方式定義的函數(shù)屬性,需要的語(yǔ)句就是“Dog.prototype = new Animal();”。而Dog類中的sayName()函數(shù)則是其自身的函數(shù)屬性了。

 除了這個(gè)最經(jīng)典的實(shí)現(xiàn)繼承的方式外,目前還有一些免費(fèi)的庫(kù)可供使用。但想到形形色色的庫(kù),頭就大了,有時(shí)間有必要時(shí)再研究吧!

相關(guān)文章

  • javascript中本地存儲(chǔ)localStorage,sessionStorage,cookie,indexDB的用法與使用場(chǎng)景匯總

    javascript中本地存儲(chǔ)localStorage,sessionStorage,cookie,indexDB的用法

    一文講清楚javascript?本地存儲(chǔ)localStorage,sessionStorage,cookie,indexDB的使用方法,以及各自的使用場(chǎng)景
    2025-02-02
  • javascript Event對(duì)象詳解及使用示例

    javascript Event對(duì)象詳解及使用示例

    Event代表事件狀態(tài),如事件發(fā)生的元素,鍵盤狀態(tài),鼠標(biāo)位置和鼠標(biāo)按鈕狀態(tài),event對(duì)象只在事件發(fā)生的過(guò)程中才有效,本文整理了一些,喜歡的朋友可以學(xué)習(xí)下
    2013-11-11
  • 關(guān)于js的三種使用方式(行內(nèi)js、內(nèi)部js、外部js)的程序代碼

    關(guān)于js的三種使用方式(行內(nèi)js、內(nèi)部js、外部js)的程序代碼

    本文主要和大家介紹關(guān)于js的三種使用方式(行內(nèi)js、內(nèi)部js、外部js)的實(shí)例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家
    2018-05-05
  • js parsefloat parseint 轉(zhuǎn)換函數(shù)

    js parsefloat parseint 轉(zhuǎn)換函數(shù)

    JavaScript提供了3個(gè)顯式的類型轉(zhuǎn)換函數(shù),分別是eval()、parseInt()和parseFloat()。
    2010-01-01
  • 最新評(píng)論

    禄劝| 星座| 靖西县| 黄龙县| 正蓝旗| 婺源县| 新郑市| 武宣县| 望谟县| 泸州市| 长顺县| 岑溪市| 夹江县| 奉节县| 华阴市| 雅江县| 泗阳县| 赤峰市| 墨玉县| 德格县| 黑山县| 牙克石市| 井冈山市| 黔南| 纳雍县| 麻城市| 如皋市| 高尔夫| 南溪县| 乌拉特中旗| 驻马店市| 五大连池市| 青冈县| 崇信县| 河池市| 河北区| 宜兴市| 汉中市| 邢台市| 三门峡市| 玛沁县|