首页 > 解决方案 > 如何在星期几同时添加连字符

问题描述

示例 1:

daysofweek=['MON','TUE','WED','THU','FRI','SUN'] ;

输出应该是:

MON-FRI,SUN

示例 2:

daysofweek=['MON',TUE'];

输出应该是:

MON,TUE

标签: javascript

解决方案


var oneDArray = function(weekArray){

  var week = []; 
  for(var  i=0; i< weekArray.length;i++){
        var conDays = weekArray[i];
        if((sorter[conDays[1]] - sorter[conDays[0]]) === 0 ){
            week[i] = conDays[0];
        }
        else if((sorter[conDays[1]] - sorter[conDays[0]]) === 1 ){
            week[i] = conDays;
        }else{
            week[i] = conDays.join("-");
        } 
  }
  return week.join();
};

var convertToWeekRanges = function (week) {
       var weekRanges = [] 
       weekRanges[0] = [week[0], week[0]];
       var  lastIndex = 0;

    for (var i = 1; i < week.length; i++) {

        if ((sorter[week[i]] - sorter[weekRanges[lastIndex][1]]) === 1) {
            weekRanges[lastIndex][1] = week[i];
        } else {
            weekRanges[++lastIndex] = [week[i], week[i]];
        }
    }
    return weekRanges;
};

console.log(oneDArray(convertToWeekRanges(['MON','TUE'] )));

console.log(oneDArray(convertToWeekRanges(['MON','TUE','WED','THU','SAT','SUN'])));

console.log(oneDArray(convertToWeekRanges(['MON','TUE','WED','THU','FRI','SUN'])));

推荐阅读