最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談js-FCC算法Friendly Date Ranges(詳解)

 更新時間:2017年04月10日 08:50:04   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談js-FCC算法Friendly Date Ranges(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

讓日期區(qū)間更友好!

把常見的日期格式如:YYYY-MM-DD 轉(zhuǎn)換成一種更易讀的格式。

易讀格式應(yīng)該是用月份名稱代替月份數(shù)字,用序數(shù)詞代替數(shù)字來表示天 (1st 代替 1).

記住不要顯示那些可以被推測出來的信息: 如果一個日期區(qū)間里結(jié)束日期與開始日期相差小于一年,則結(jié)束日期就不用寫年份了。月份開始和結(jié)束日期如果在同一個月,則結(jié)束日期月份就不用寫了。

另外, 如果開始日期年份是當(dāng)前年份,且結(jié)束日期與開始日期小于一年,則開始日期的年份也不用寫。

我的代碼:

function makeFriendlyDates(arr) {
 //獲得目前的年份
 var yearnow=(new Date()).getFullYear();
 //把傳入的參數(shù)放入字符串?dāng)?shù)組,創(chuàng)建Date類型也可以
 var date1=arr[0].split("-");
 var date2=arr[1].split("-");
 //月份的英文表示
 var months=["January","February","March","April","May","June","July","August","September","October","November","December"];
 //初始化幾個后面用到的數(shù)組
 var date1str="";
 var date2str="";
 var datearr=[];
 //給日期加后綴的函數(shù)
 function friendlydate(str){
  var str2num=Number(str);
  switch(str2num){
   case 1:
    str2num+="st";
    break;
   case 2:
    str2num+="nd";
    break;
   case 3:
    str2num+="rd";
    break;
   default:
    str2num+="th";
  }
  return str2num;
 }
 //date1的字符串表示大部分情況下都是需要年月日的。date2的如果不是在同年同月,大部分情況下都是需要月日的
 date1str=months[date1[1]-1]+" "+friendlydate(date1[2])+", "+date1[0];
 if(date1[1]===date2[1]&&date1[0]===date2[0]){
  date2str=friendlydate(date2[2]);
 }else{
  date2str=months[date2[1]-1]+" "+friendlydate(date2[2]);
 }
 //如果大于一年,date2加上年份;如果小于一年,而且date1的日期是今年,那么去掉date1的年份。
 if((date2[0]-date1[0]>1)||((date2[0]-date1[0]===1)&&(date2[1]-date1[1]>0))||((date2[0]-date1[0]===1)&&(date2[1]-date1[1]===0)&&date2[2]-date1[2]>=0)){
  date2str+=", "+date2[0];
 }else if(date1[0]==yearnow){
  date1str=date1str.slice(0,-6);
 }
 //把兩個日期放在同一個數(shù)組里輸出(如果是同年同月同日,代碼里的date2str無用,所以代碼是可以改善的)。
 datearr[datearr.length]=date1str;
 if(date1.toString()!==date2.toString()){
  datearr[datearr.length]=date2str;
 }
 return datearr;
}

特殊情況下,date2str是沒用的,有空改善一下。

以上這篇淺談js-FCC算法Friendly Date Ranges(詳解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

福泉市| 博乐市| 乌拉特后旗| 平南县| 滦南县| 隆回县| 昌江| 莱芜市| 临洮县| 张家港市| 揭东县| 红河县| 蒲江县| 泸州市| 方城县| 浠水县| 开封县| 闽清县| 依安县| 天气| 礼泉县| 苍溪县| 恩施市| 巴彦县| 斗六市| 涟源市| 新密市| 高安市| 涞水县| 乐业县| 密云县| 宜宾市| 塔河县| 始兴县| 维西| 禹州市| 洛扎县| 昌平区| 临武县| 普安县| 余江县|