欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JavaScript从工厂模式到寄生对象模式的代码实例学习

程序员文章站 2022-04-19 10:27:02
工厂模式: function personfactory(username, password) { var person = new object(); person.username = use...

工厂模式:

function personfactory(username, password) {

var person = new object();

person.username = username;

person.password = password;

return person;

}

var person = personfactory("luohao", "123456");

console.log(person.username);

console.log(person.password);

寄生构造模式

function myarray() {

var cities = new array();

cities.push.apply(cities, arguments);

cities.tomystring = function() {

return this.join('|');

}

return cities;

}

var cities = myarray("西安", "武汉", "南京");

console.log(cities.tomystring());

工厂模式和寄生构造模式没有任何区别。

一般使用工厂模式创建简单的对象,使用寄生构造模式为不可以修改的对象添加方法。

无论是工厂模式还是寄生构造模式返回的对象都和声明的对象在类型上没有必然的关系。

因此不能使用instanceof 去判断一个寄生构造模式返回的对象是不是就是寄生对象。