1. 程式人生 > >javascript時間戳和日期字串相互轉換程式碼

javascript時間戳和日期字串相互轉換程式碼

一、日期字串轉時間戳

    // 獲取當前時間戳(以s為單位)
	    // 第一種方式
	    var timestamps = +new Date();
	    timestamps = timestamps / 1000;
	    // 第二種方式
	    var timestamp = Date.parse(new Date());
	    timestamp = timestamp / 1000;
	    // 第三種方式
	    var date = new Date("2014-07-10 10:21:12"); //時間物件
	    var str = date.getTime(); //轉換成時間戳
	    str = str / 1000;
 
    // 獲取某個時間格式的時間戳
    var stringTime = "2014-07-10 10:21:12";
    var timestamp2 = Date.parse(new Date(stringTime));
    timestamp2 = timestamp2 / 1000;

二、時間戳轉日期字串

 // 第一種方式 原生的方式 但是不能修改
    var timestamp3 = 1403058804;
    var newDate = new Date();
    newDate.setTime(timestamp3 * 1000);
    console.log(newDate.toLocaleDateString()); // 2014年6月18日 
    console.log(newDate.toLocaleString()); // 2014年6月18日 上午10:33:24  
    console.log(newDate.toLocaleTimeString()); // 上午10:33:24 
    // 第二種方式:給日期物件原型新增一個方法
    Date.prototype.format = function(format) {
        var date = {
            "M+": this.getMonth() + 1,
            "d+": this.getDate(),
            "h+": this.getHours(),
            "m+": this.getMinutes(),
            "s+": this.getSeconds(),
            "q+": Math.floor((this.getMonth() + 3) / 3),
            "S+": this.getMilliseconds()
        };
        if (/(y+)/i.test(format)) {
            format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));
        }
        for (var k in date) {
            if (new RegExp("(" + k + ")").test(format)) {
                format = format.replace(RegExp.$1, RegExp.$1.length == 1 ?
                    date[k] : ("00" + date[k]).substr(("" + date[k]).length));
            }
        }
        return format;
    }
    console.log(newDate.format('yyyy-MM-dd h:m:s'));
    // 第三種方式:函式處理
    function formatDate(now) {
        var year = now.getYear();
        var month = now.getMonth() + 1;
        var date = now.getDate();
        var hour = now.getHours();
        var minute = now.getMinutes();
        var second = now.getSeconds();
        return year + "-" + month + "-" + date + " " + hour + ":" + minute + ":" + second;
    }
    var d = new Date(1368360620000);
    console.log(formatDate(d));

原文地址:https://blog.csdn.net/js_admin/article/details/76973074