国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

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

2019-11-19 16:52:36
字體:
來源:轉載
供稿:網友

讓日期區間更友好!

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

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

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

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

我的代碼:

function makeFriendlyDates(arr) { //獲得目前的年份 var yearnow=(new Date()).getFullYear(); //把傳入的參數放入字符串數組,創建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"]; //初始化幾個后面用到的數組 var date1str=""; var date2str=""; var datearr=[]; //給日期加后綴的函數 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); } //把兩個日期放在同一個數組里輸出(如果是同年同月同日,代碼里的date2str無用,所以代碼是可以改善的)。 datearr[datearr.length]=date1str; if(date1.toString()!==date2.toString()){  datearr[datearr.length]=date2str; } return datearr;}

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

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 托里县| 仪征市| 嵊州市| 合阳县| 石棉县| 梁山县| 绿春县| 磐安县| 修文县| 巴塘县| 融水| 达州市| 无为县| 诏安县| 育儿| 文成县| 清水河县| 斗六市| 和平区| 洱源县| 平舆县| 孟村| 永川市| 潞西市| 宝兴县| 岚皋县| 夹江县| 乐东| 上高县| 霍州市| 沙湾县| 庆城县| 英山县| 西宁市| 永仁县| 丽江市| 保山市| 公主岭市| 汝州市| 平湖市| 建宁县|