天天看點

Js 日期與字元串互相轉換

日期轉字元串格式

//日期轉字元串格式
 function DateToStr(date) {
     var year = date.getFullYear();//年
     var month = date.getMonth();//月
     var day = date.getDate();//日
     var hours = date.getHours();//時
     var min = date.getMinutes();//分
     var second = date.getSeconds();//秒
     return year + "-" +
         ((month + 1) > 9 ? (month + 1) : "0" + (month + 1)) + "-" +
         (day > 9 ? day : ("0" + day)) + " " +
         (hours > 9 ? hours : ("0" + hours)) + ":" +
         (min > 9 ? min : ("0" + min)) + ":" +
         (second > 9 ? second : ("0" + second));
 }
           

字元串轉日期

function StrToDate(datestr) {
    return new Date(datestr);
}
           

字元串轉新字元串

function formatDate(dateStr) {
    var newdateStr = dateStr.replace(/\d+(?=-[^-]+$)/, (a) => (parseInt(a, 10) - 1));  //字元串處理(月份)
    var nums = newdateStr.match(/\d+/g);  //取數
    var date = eval('new Date(' + nums + ')');  //轉換
    //重組
    var datetime =
        date.getFullYear() + "-" +  //年
        ((date.getMonth() + 1) > 9 ? (date.getMonth() + 1) : "0" + (date.getMonth() + 1)) + "-" +  //月
        (date.getDate() > 9 ? date.getDate() : ("0" + date.getDate()));  //日
    return datetime;
}
           

使用方法:

日期轉字元串:

var date1 = new Date(2020,9,10,10,10,10);  //2020-10-10 10:10:10

console.log(date1);

console.log(DateToStr(date1));

字元串轉日期:

var datestr1 = "2020-10-10 20:20:20";

console.log(datestr1);

console.log(StrToDate(datestr1));

字元串轉新字元串:

var datestr2 = "2020-10-10 20:20:20"; 

console.log(datestr2);

console.log(formatDate(datestr2));

繼續閱讀