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

首頁 > 開發 > JS > 正文

javaScript日期工具類DateUtils詳解

2024-05-06 16:41:17
字體:
來源:轉載
供稿:網友

本文實例為大家分享了javaScript日期工具類的具體代碼,供大家參考,具體內容如下

DateUtils = {     patterns: {       PATTERN_ERA: 'G', //Era 標志符 Era strings. For example: "AD" and "BC"       PATTERN_YEAR: 'y', //年       PATTERN_MONTH: 'M', //月份       PATTERN_DAY_OF_MONTH: 'd', //月份的天數       PATTERN_HOUR_OF_DAY1: 'k', //一天中的小時數(1-24)       PATTERN_HOUR_OF_DAY0: 'H', //24小時制,一天中的小時數(0-23)       PATTERN_MINUTE: 'm', //小時中的分鐘數       PATTERN_SECOND: 's', //秒       PATTERN_MILLISECOND: 'S', //毫秒       PATTERN_DAY_OF_WEEK: 'E', //一周中對應的星期,如星期一,周一       PATTERN_DAY_OF_YEAR: 'D', //一年中的第幾天       PATTERN_DAY_OF_WEEK_IN_MONTH: 'F', //一月中的第幾個星期(會把這個月總共過的天數除以7,不夠準確,推薦用W)       PATTERN_WEEK_OF_YEAR: 'w', //一年中的第幾個星期       PATTERN_WEEK_OF_MONTH: 'W', //一月中的第幾星期(會根據實際情況來算)       PATTERN_AM_PM: 'a', //上下午標識       PATTERN_HOUR1: 'h', //12小時制 ,am/pm 中的小時數(1-12)       PATTERN_HOUR0: 'K', //和h類型       PATTERN_ZONE_NAME: 'z', //時區名       PATTERN_ZONE_VALUE: 'Z', //時區值       PATTERN_WEEK_YEAR: 'Y', //和y類型       PATTERN_ISO_DAY_OF_WEEK: 'u',       PATTERN_ISO_ZONE: 'X'     },     week: {       'ch': {         "0": "/u65e5",         "1": "/u4e00",         "2": "/u4e8c",         "3": "/u4e09",         "4": "/u56db",         "5": "/u4e94",         "6": "/u516d"       },       'en': {         "0": "Sunday",         "1": "Monday",         "2": "Tuesday",         "3": "Wednesday",         "4": "Thursday",         "5": "Friday",         "6": "Saturday"       }     },     //獲取當前時間     getCurrentTime: function() {       var today = new Date();       var year = today.getFullYear();       var month = today.getMonth() + 1;       var day = today.getDate();       var hours = today.getHours();       var minutes = today.getMinutes();       var seconds = today.getSeconds();       var timeString = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;       return timeString;     },     /*      * 比較時間大小      * time1>time2 return 1      * time1<time2 return -1      * time1==time2 return 0      */     compareTime: function(time1, time2) {       if(Date.parse(time1.replace(/-/g, "/")) > Date.parse(time2.replace(/-/g, "/"))) {         return 1;       } else if(Date.parse(time1.replace(/-/g, "/")) < Date.parse(time2.replace(/-/g, "/"))) {         return -1;       } else if(Date.parse(time1.replace(/-/g, "/")) == Date.parse(time2.replace(/-/g, "/"))) {         return 0;       }     },     //是否閏年     isLeapYear: function(year) {       return((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0);     },     //獲取某個月的天數,從0開始     getDaysOfMonth: function(year, month) {       return [31, (this.isLeapYear(year) ? 29 : 28), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month];     },     getDaysOfMonth2: function(year, month) {       // 將天置為0,會獲取其上個月的最后一天       month = parseInt(month) + 1;       var date = new Date(year, month, 0);       return date.getDate();     },     /*距離現在幾天的日期:負數表示今天之前的日期,0表示今天,整數表示未來的日期      * 如-1表示昨天的日期,0表示今天,2表示后天      */     fromToday: function(days) {       var today = new Date();       today.setDate(today.getDate() + days);       var date = today.getFullYear() + "-" + (today.getMonth() + 1) + "-" + today.getDate();       return date;     },     /**      * 日期時間格式化      * @param {Object} dateTime 需要格式化的日期時間      * @param {String} pattern 格式化的模式,如yyyy-MM-dd hh(HH):mm:ss.S a k K E D F w W z Z      */     formt: function(dateTime, pattern) {       var date = new Date(dateTime);       if(Bee.StringUtils.isBlank(pattern)) {         return date.toLocaleString();       }       return pattern.replace(/([a-z])/1*/ig, function(matchStr, group1) {         var replacement = "";         switch(group1) {           case Bee.DateUtils.patterns.PATTERN_ERA: //G             break;           case Bee.DateUtils.patterns.PATTERN_WEEK_YEAR: //Y           case Bee.DateUtils.patterns.PATTERN_YEAR: //y             replacement = date.getFullYear();             break;           case Bee.DateUtils.patterns.PATTERN_MONTH: //M             var month = date.getMonth() + 1;             replacement = (month < 10 && matchStr.length >= 2) ? "0" + month : month;             break;           case Bee.DateUtils.patterns.PATTERN_DAY_OF_MONTH: //d             var days = date.getDate();             replacement = (days < 10 && matchStr.length >= 2) ? "0" + days : days;             break;           case Bee.DateUtils.patterns.PATTERN_HOUR_OF_DAY1: //k(1~24)             var hours24 = date.getHours();             replacement = hours24;             break;           case Bee.DateUtils.patterns.PATTERN_HOUR_OF_DAY0: //H(0~23)             var hours24 = date.getHours();             replacement = (hours24 < 10 && matchStr.length >= 2) ? "0" + hours24 : hours24;             break;           case Bee.DateUtils.patterns.PATTERN_MINUTE: //m             var minutes = date.getMinutes();             replacement = (minutes < 10 && matchStr.length >= 2) ? "0" + minutes : minutes;             break;           case Bee.DateUtils.patterns.PATTERN_SECOND: //s             var seconds = date.getSeconds();             replacement = (seconds < 10 && matchStr.length >= 2) ? "0" + seconds : seconds;             break;           case Bee.DateUtils.patterns.PATTERN_MILLISECOND: //S             var milliSeconds = date.getMilliseconds();             replacement = milliSeconds;             break;           case Bee.DateUtils.patterns.PATTERN_DAY_OF_WEEK: //E             var day = date.getDay();             replacement = Bee.DateUtils.week['ch'][day];             break;           case Bee.DateUtils.patterns.PATTERN_DAY_OF_YEAR: //D             replacement = Bee.DateUtils.dayOfTheYear(date);             break;           case Bee.DateUtils.patterns.PATTERN_DAY_OF_WEEK_IN_MONTH: //F             var days = date.getDate();             replacement = Math.floor(days / 7);             break;           case Bee.DateUtils.patterns.PATTERN_WEEK_OF_YEAR: //w             var days = Bee.DateUtils.dayOfTheYear(date);             replacement = Math.ceil(days / 7);             break;           case Bee.DateUtils.patterns.PATTERN_WEEK_OF_MONTH: //W             var days = date.getDate();             replacement = Math.ceil(days / 7);             break;           case Bee.DateUtils.patterns.PATTERN_AM_PM: //a             var hours24 = date.getHours();             replacement = hours24 < 12 ? "/u4e0a/u5348" : "/u4e0b/u5348";             break;           case Bee.DateUtils.patterns.PATTERN_HOUR1: //h(1~12)             var hours12 = date.getHours() % 12 || 12; //0轉為12             replacement = (hours12 < 10 && matchStr.length >= 2) ? "0" + hours12 : hours12;             break;           case Bee.DateUtils.patterns.PATTERN_HOUR0: //K(0~11)             var hours12 = date.getHours() % 12;             replacement = hours12;             break;           case Bee.DateUtils.patterns.PATTERN_ZONE_NAME: //z             replacement = Bee.DateUtils.getZoneNameValue(date)['name'];             break;           case Bee.DateUtils.patterns.PATTERN_ZONE_VALUE: //Z             replacement = Bee.DateUtils.getZoneNameValue(date)['value'];             break;           case Bee.DateUtils.patterns.PATTERN_ISO_DAY_OF_WEEK: //u             break;           case Bee.DateUtils.patterns.PATTERN_ISO_ZONE: //X             break;           default:             break;         }         return replacement;       });     },     /**      * 計算一個日期是當年的第幾天      * @param {Object} date      */     dayOfTheYear: function(date) {       var obj = new Date(date);       var year = obj.getFullYear();       var month = obj.getMonth(); //從0開始       var days = obj.getDate();       var daysArr = [31, (this.isLeapYear(year) ? 29 : 28), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];       for(var i = 0; i < month; i++) {         days += daysArr[i];       }       return days;     },     //獲得時區名和值     getZoneNameValue: function(dateObj) {       var date = new Date(dateObj);       date = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));       var arr = date.toString().match(/([A-Z]+)([-+]/d+:?/d+)/);       var obj = {         'name': arr[1],         'value': arr[2]       };       return obj;     }   }; 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 合水县| 林州市| 中牟县| 江都市| 武安市| 二手房| 宁都县| 河间市| 青浦区| 前郭尔| 桃园市| 油尖旺区| 巨鹿县| 商丘市| 万山特区| 武山县| 凤冈县| 峨边| 崇阳县| 奉新县| 洛川县| 虹口区| 株洲县| 新昌县| 柳江县| 加查县| 汉中市| 武陟县| 花垣县| 中牟县| 延庆县| 报价| 金阳县| 萨嘎县| 漳州市| 乐亭县| 宁城县| 集贤县| 徐州市| 沈阳市| 哈巴河县|