courvillejustin
3/2/2015 - 6:19 PM

JS Bin Solution: DailyProgrammer #199 Bank Number Banners Pt 1 // source http://jsbin.com/peloma

JS Bin

Solution: DailyProgrammer #199 Bank Number Banners Pt 1

// source http://jsbin.com/peloma

(function main(){
      var lookup =[
         ['_',' ',' ','|',' ','|','|','_','|'],
         [' ',' ',' ',' ','|',' ',' ','|',' '],
         ['_',' ',' ',' ','_','|','|','_',' '], 
         ['_',' ',' ',' ','_','|',' ','_','|'], 
         [' ',' ',' ','|','_','|',' ',' ','|'], 
         ['_',' ',' ','|','_',' ',' ','_','|'],
         ['_',' ',' ','|','_',' ','|','_','|'],
         ['_',' ',' ',' ',' ','|',' ',' ','|'],
         ['_',' ',' ','|','_','|','|','_','|'],
         ['_',' ',' ','|','_','|',' ',' ','|'],
      ];
      var buildBannerText = function(idx,str,arr,start,end){
        if(idx < arr.length){
          str += lookup[arr[idx]].slice(start,end).join('') + ' ';
          return buildBannerText(idx+1,str,arr,start,end);
        }
        str += '\n';
        return str;
      };
      var convertToBanner = function(arr){
        console.log(buildBannerText(0,'',arr,0,3)+buildBannerText(0,'',arr,3,6)+buildBannerText(0,'',arr,6,9));
      };
      convertToBanner('012345678');  
    })();
<!DOCTYPE html>
<html>
<head>
<meta name="description" content="Solution: DailyProgrammer #199 Bank Number Banners Pt 1 ">
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
<body>

<script id="jsbin-javascript">
(function main(){
      var lookup =[
         ['_',' ',' ','|',' ','|','|','_','|'],
         [' ',' ',' ',' ','|',' ',' ','|',' '],
         ['_',' ',' ',' ','_','|','|','_',' '], 
         ['_',' ',' ',' ','_','|',' ','_','|'], 
         [' ',' ',' ','|','_','|',' ',' ','|'], 
         ['_',' ',' ','|','_',' ',' ','_','|'],
         ['_',' ',' ','|','_',' ','|','_','|'],
         ['_',' ',' ',' ',' ','|',' ',' ','|'],
         ['_',' ',' ','|','_','|','|','_','|'],
         ['_',' ',' ','|','_','|',' ',' ','|'],
      ];
      var buildBannerText = function(idx,str,arr,start,end){
        if(idx < arr.length){
          str += lookup[arr[idx]].slice(start,end).join('') + ' ';
          return buildBannerText(idx+1,str,arr,start,end);
        }
        str += '\n';
        return str;
      };
      var convertToBanner = function(arr){
        console.log(buildBannerText(0,'',arr,0,3)+buildBannerText(0,'',arr,3,6)+buildBannerText(0,'',arr,6,9));
      };
      convertToBanner('012345678');  
    })();
</script>



<script id="jsbin-source-javascript" type="text/javascript">    (function main(){
      var lookup =[
         ['_',' ',' ','|',' ','|','|','_','|'],
         [' ',' ',' ',' ','|',' ',' ','|',' '],
         ['_',' ',' ',' ','_','|','|','_',' '], 
         ['_',' ',' ',' ','_','|',' ','_','|'], 
         [' ',' ',' ','|','_','|',' ',' ','|'], 
         ['_',' ',' ','|','_',' ',' ','_','|'],
         ['_',' ',' ','|','_',' ','|','_','|'],
         ['_',' ',' ',' ',' ','|',' ',' ','|'],
         ['_',' ',' ','|','_','|','|','_','|'],
         ['_',' ',' ','|','_','|',' ',' ','|'],
      ];
      var buildBannerText = function(idx,str,arr,start,end){
        if(idx < arr.length){
          str += lookup[arr[idx]].slice(start,end).join('') + ' ';
          return buildBannerText(idx+1,str,arr,start,end);
        }
        str += '\n';
        return str;
      };
      var convertToBanner = function(arr){
        console.log(buildBannerText(0,'',arr,0,3)+buildBannerText(0,'',arr,3,6)+buildBannerText(0,'',arr,6,9));
      };
      convertToBanner('012345678');  
    })();</script></body>
</html>