美文网首页
javascript设计模式读书笔记一工厂模式

javascript设计模式读书笔记一工厂模式

作者: 若邪Y | 来源:发表于2016-07-03 23:30 被阅读20次
    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.cnblogs.com';
    o.insert(document.body);
    

    以下几种情景下工厂模式特别有用:
    对象的构建十分复杂
    需要依赖具体环境创建不同实例
    处理大量具有相同属性的小对象
    参考:深入理解JavaScript系列(28):设计模式之工厂模式

    相关文章

      网友评论

          本文标题:javascript设计模式读书笔记一工厂模式

          本文链接:https://www.haomeiwen.com/subject/hudcjttx.html