组合使用构造函数模式和原型模式和寄生构造函数

Posted shenq2014

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了组合使用构造函数模式和原型模式和寄生构造函数相关的知识,希望对你有一定的参考价值。

chuangjian自定义类型的最常见方式就是组合使用构造函数模式与原型模式,构造函数模式用于定义实力属性,原型模式定义方法和共享的属性。

寄生构造函数:

原来的写法

var array1 = [‘1‘,‘2‘];
var array2 = [‘1‘,‘2‘,‘3‘];
array1.a = function () {
alert(this.length);
};
array1.a();
array2.a = function () {
alert(this.length);
};
array2.a();

 与上面的结果一致,方法写在了一起
    function SpecialArray() {
        var values = new Array();
        values.push.apply(values, arguments);
        values.toPipedString = function () {
            return this.length;
        };
        return values;
    }
    var array1 = new SpecialArray(‘1‘,‘2‘);
    alert(array1.toPipedString());
    var array2 = new SpecialArray(‘1‘,‘2‘,‘3‘);
    alert(array2.toPipedString());

  

以上是关于组合使用构造函数模式和原型模式和寄生构造函数的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript之面向对象学习七(动态原型模式和寄生构造函数模式创建自定义类型)

JavaScript继承基础讲解,原型链借用构造函数混合模式原型式继承寄生式继承寄生组合式继承

最全前端面试集合

“工厂构造原型” 设计模式

JSJavaScript创建对象 - 工厂模式 - 构造函数模式 - 原型模式 - 原型链 - 组合模式

js对象和继承总结