Advertisement
Guest User

Untitled

a guest
Jan 17th, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. var week = [1,2,3,4,5,6,7]
  3. , week1 = [1,2,3,6,7]
  4. , week2 = [1,2,3,4,5,6]
  5. , week3 = [4,5,6,7]
  6. , week4 = [3,4,5,7];
  7.  
  8. var parseWeek = function(week){
  9.  
  10.     week.sort();
  11.  
  12.     var msg = ""
  13.     , plus = []
  14.     , cont = []
  15.     , from = 0
  16.     , to  = 0
  17.     , hole = week.length < 7 && week[0] == 1 && week[week.length-1] == 7;
  18.  
  19.     for(var i=0; i < week.length; i++){
  20.         var c = week[i]
  21.         , n = week[i+1] || false
  22.         , p = week[i-1] || false;
  23.  
  24.         //if(c - p === 1 || n - c === 1){
  25.         if(hole){
  26.             if(n - c === 1){
  27.                 cont.push(c);
  28.             } else {
  29.                 plus.push(c);
  30.             }
  31.         } else {
  32.             if(c - p === 1 || n - c === 1){
  33.                 cont.push(c);
  34.             } else {
  35.                 plus.push(c);
  36.             }
  37.         }
  38.     }      
  39.  
  40.     if(hole){
  41.         from = cont[cont.length-1];
  42.         to = plus[0];
  43.     } else {
  44.         from = cont[0];
  45.         to = cont[cont.length-1];
  46.     }
  47.  
  48.     if(cont.length){
  49.         msg += "el array va desde el " + from + " al " + to;
  50.     }
  51.  
  52.     if(!hole && plus.length){
  53.         msg+= " y " + plus.join(",")
  54.     }
  55.  
  56.     console.log(week);
  57.     console.log(msg);
  58. }
  59.  
  60. parseWeek(week);
  61. parseWeek(week1);
  62. parseWeek(week2);
  63. parseWeek(week3);
  64. parseWeek(week4);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement