设计模式---003代理模式(转载自我的老师 Alley-巷子)

时间:2019-08-31
本文章向大家介绍设计模式---003代理模式(转载自我的老师 Alley-巷子),主要包括设计模式---003代理模式(转载自我的老师 Alley-巷子)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

一、什么是代理模式

  解释:为其他对象提供一种代理以控制对这个对象的访问

二、案例一
     需求:如果有人需要找宝宝拍电影,那么首先必须找到吉吉。
     分析:对象:宝宝、吉吉
三、案例三
     用代理模式实现图片预加载
function CreateImg(){
        //创建img标签
        var img = document.createElement("img");
        //设置img的路径为一个loading
        img.src = "loading.gif";
        //插入页码
        document.body.appendChild(img);
        
        //当图片缓存完毕以后替换loading
        this.setSrc = function(url){
            img.src = url;
        }
    }


    function ProxyImg(){
        var target =  new CreateImg();
        //创建Image对象
        var img = new Image();
        //缓存一张图片
        img.onload = function(){
            //当图片缓存完毕后赋值给createImage
            target.setSrc(this.src)
        }

        //设置缓存图片路径
        this.setSrc = function(url){
            img.src = url
        }
    }
    var img = new ProxyImg();
    img.setSrc("w1.jpg");

原文地址:https://www.cnblogs.com/mp-0518/p/11440553.html