JS工厂模式

来源:互联网 发布:vue.js 移动端ui框架 编辑:程序博客网 时间:2024/05/17 01:43
var page = page || {};page.dom = page.dom || {};//子函数1:处理文本page.dom.Text = function () {    this.insert = function (where) {        var txt = document.createTextNode(this.url);        where.appendChild(txt);    };};//子函数2:处理链接page.dom.Link = function () {    this.insert = function (where) {        var link = document.createElement('a');        link.href = this.url;        link.appendChild(document.createTextNode(this.url));        where.appendChild(link);    };};//子函数3:处理图片page.dom.Image = function () {    this.insert = function (where) {        var im = document.createElement('img');        im.src = this.url;        where.appendChild(im);    };};



工厂方法接口

page.dom.factory = function (type) {    return new page.dom[type];}

调用方式

var o = page.dom.factory('Link');o.url = 'http://www.csdn.com';o.insert(document.body);