組合使用建構函式模式和動態原型模式、寄生建構函式模式(建立具有額外方法的特殊數組)

來源:互聯網
上載者:User

標籤:color   使用   io   ar   資料   cti   log   sp   on   

function Bird(name, age) {    this.name = name;    this.age = age;    this.sons = ["Tom", "John"];    //在sayName()方法不存在的情況下,添加到原型中    if (typeof this.sayName != "function") {        Bird.prototype.sayname = function() {            console.log(this.name);        };    }}/*使用動態原型模式時,不能使用對象字面量重寫原型,如果在已經建立了執行個體情況下重寫原型,就會出現上一篇文章中提到過的錯誤。*/
function SpeArray() {    var values = new Array();//建立數組    values.push.apply(values, arguments);//添加值    values.toPipedString = function() {        return this.join("|"):    };    return values;//返回數組}var colors = new SpeArray("red", "blue", "green");console.log(colors.toPipedString());//當然在此不能直接修改Array建構函式,且建立一個有特殊方法的數組//根據此原理可以設計自己的“棧”、“隊列”等特殊資料結構。


組合使用建構函式模式和動態原型模式、寄生建構函式模式(建立具有額外方法的特殊數組)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.