>  기사  >  웹 프론트엔드  >  JS 字符串转日期格式 日期格式化字符串_html/css_WEB-ITnose

JS 字符串转日期格式 日期格式化字符串_html/css_WEB-ITnose

WBOY
WBOY원래의
2016-06-24 11:55:511824검색

 1 /** 2 * @author 陈维斌 3 * 如果想将日期字符串格式化,需先将其转换为日期类型Date 4 * 以下是提供几种常用的 5 * 6 * var da = new Date().format('yyyy-MM-dd hh:mm:ss'); //将日期格式串,转换成先要的格式 7 * alert("格式化日期类型 \n" + new Date() + "\n 为字符串:" + da); 8 * 9 * var str = "2014/01/01 01:01:01" // yyyy/mm/dd这种格式转化成日期对像可以用new Date(str);在转换成指定格式10 * alert("格式化字符串\n" + str + " 为日期格式 \n" + new Date(str).format('yyyy-MM-dd hh:mm:ss'))11 *12 *13 * var str1 = "2014-12-31 00:55:55" // yyyy-mm-dd这种格式的字符串转化成日期对象可以用new Date(Date.parse(str.replace(/-/g,"/")));14 * alert("格式化字符串\n" + str1 + " 为日期格式 \n" + new Date(Date.parse(str1.replace(/-/g, "/"))).format('yyyy-MM-dd hh:mm:ss'))15 *16 *17 * 日期加月18 * 先将字符转换成Date类型才可以使用19 * var str1 = "2014-12-31 00:55:55" // yyyy-mm-dd这种格式的字符串转化成日期对象可以用new Date(Date.parse(str.replace(/-/g,"/")));20 * 例如 var saveDate = new Date(Date.parse(str1.replace(/-/g, "/"))).addMonth(5)21 * addMonth(月数) 必须为整数22 */23 24 Date.prototype.format = function (format) {25     var date = {26         "M+": this.getMonth() + 1,27         "d+": this.getDate(),28         "h+": this.getHours(),29         "m+": this.getMinutes(),30         "s+": this.getSeconds(),31         "q+": Math.floor((this.getMonth() + 3) / 3),32         "S+": this.getMilliseconds()33     };34     if (/(y+)/i.test(format)) {35         format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));36     }37     for (var k in date) {38         if (new RegExp("(" + k + ")").test(format)) {39             format = format.replace(RegExp.$1, RegExp.$1.length == 140                             ? date[k] : ("00" + date[k]).substr(("" + date[k]).length));41         }42     }43     return format;44 }45 Date.daysInMonth = function (year, month) {46     if (month == 1) {47         if (year % 4 == 0 && year % 100 != 0)48             return 29;49         else50             return 28;51     } else if ((month <= 6 && month % 2 == 0) || (month = 6 && month % 2 == 1))52         return 31;53     else54         return 30;55 };56 Date.prototype.addMonth = function (addMonth) {57     var y = this.getFullYear();58     var m = this.getMonth();59     var nextY = y;60     var nextM = m;61     //如果当前月+要加上的月>11 这里之所以用11是因为 js的月份从0开始62     if (m > 11) {63         nextY = y + 1;64         nextM = parseInt(m + addMonth) - 11;65     } else {66         nextM = this.getMonth() + addMonth67     }68     var daysInNextMonth = Date.daysInMonth(nextY, nextM);69     var day = this.getDate();70     if (day > daysInNextMonth) {71         day = daysInNextMonth;72     }73     return new Date(nextY, nextM, day);74 };

 

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.