SRP单一职责在闭包中的作用

来源:互联网 发布:算法工程师工资 编辑:程序博客网 时间:2024/05/16 05:11

SRP-单一职责:被定义为“引起变化的原因”,如果我们有两个动机去改写一个方法,那么这方法就有两个职责;

举例一个图片加载,要实现添加一个img标签和预加载图片的功能,分成两部份;分析下这两个闭包的执行顺序以便更好的理解

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>

</body>
<script type="text/javascript">
var MyImage=(function(){
1、 var imgNode=document.createElement('img');
2、 document.body.appendChild(imgNode);
return {
6、 setSrc:function(src){
        9、     imgNode.src=src;
}
}
})();
var proxyImage=(function(){
        3、    var img=new Image;
                   img.onload=function(){
              8、 MyImage.setSrc(this.src);
              }
           return {
          5、 setSrc:function(src){
        MyImage.setSrc('Image/marker-icon.png');
          7、 img.src=src;
        }
           }
})();
      4、 proxyImage.setSrc('Image/layers.png');
</script>
</html>




0 0