日期和时间戳互转

1、日期转为时间戳

var date = new Date('2014-04-23 18:55:49:123');

    // 有三种方式获取

    var time1 = date.getTime();

    var time2 = date.valueOf();

    var time3 = Date.parse(date);

    console.log(time1);//1398250549123

    console.log(time2);//1398250549123

    console.log(time3);//1398250549000

  以上三种获取方式的区别:

  第一、第二种:会精确到毫秒

  第三种:只能精确到秒,毫秒用000替代

  以上三个输出结果可观察其区别

  注意:获取到的时间戳除以1000就可获得Unix时间戳,就可传值给后台得到。

2、时间戳转为日期

function timestampToTime(timestamp) {

        var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000

        Y = date.getFullYear() + '-';

        M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';

        D = date.getDate() + ' ';

        h = date.getHours() + ':';

        m = date.getMinutes() + ':';

        s = date.getSeconds();

        return Y+M+D+h+m+s;

    }

    timestampToTime(1403058804);

    console.log(timestampToTime(1403058804));//2014-06-18 10:33:24

  注意:如果是Unix时间戳记得乘以1000。比如:PHP函数time()获得的时间戳就要乘以1000。

猜你喜欢

转载自blog.csdn.net/amyloverice/article/details/81096613