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());