英特网校

JavaScript获取时间戳与时间戳转化

注意:js获取的时间戳是13位的,而很多服务器语言(php)获取的时间戳是10位的,如果想将js的时间戳转换为php可用的时间戳,需要对js获取的时间戳除上(/)1000.

一、时间转时间戳

1、方法一:利用getTime函数,new Date为当前时间,如果需要是指定时间可以在Date中加入需要转换的时间:如   new Date("2016-08-03 00:00:00");

 getTime获取时间(从1970.1.1开始的毫秒数)

var timestamp1 = new Date().getTime();

2、方法二:利用valueOf函数,其他设置同方法一

var timestamp2 = ( new Date()).valueOf();

3、方法三:利用Date.parse对日期格式化,其他设置痛方法一

var timestamp1 = Date.parse( new Date());

二、时间戳转时间

function timetrans(date){
    var date = new Date(date*1000);//如果date为13位不需要乘1000
    var Y = date.getFullYear() + '-';
    var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
    var D = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate()) + ' ';
    var h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
    var m = (date.getMinutes() <10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
    var s = (date.getSeconds() <10 ? '0' + date.getSeconds() : date.getSeconds());
    return Y+M+D+h+m+s;
}

返回格式为:2019-5-14 08:00:00

三、时间计算

1、获取当前时间

var date = new Date(时间戳); //获取一个时间对象

var Y=date.getFullYear(); // 获取完整的年份(4位,1970)
var M=date.getMonth(); // 获取月份(0-11,0代表1月,用的时候记得加上1)
var D=date.getDate(); // 获取日(1-31)
var h=date.getHours(); // 获取小时数(0-23)
var m=date.getMinutes(); // 获取分钟数(0-59)
var s=date.getSeconds(); // 获取秒数(0-59)

var time=Y+'-'+M+'-'+D+' '+h+':'+m+':'+s;//拼接成完整时间

2、计算上一天时间

Date curDate = new Date();//如果需要设置指定时间可以new Date("2016-08-03 00:00:00")设置
new Date(curDate.getTime() - 24*60*60*1000);

3、计算后一天时间

Date curDate = new Date();//如果需要设置指定时间可以new Date("2016-08-03 00:00:00")设置
new Date(curDate.getTime() + 24*60*60*1000);

4、计算当期时间为星期几

function getWeek(date) {
    var week;
    if(date.getDay() == 0) week = "星期日"
    if(date.getDay() == 1) week = "星期一"
    if(date.getDay() == 2) week = "星期二"
    if(date.getDay() == 3) week = "星期三"
    if(date.getDay() == 4) week = "星期四"
    if(date.getDay() == 5) week = "星期五"
    if(date.getDay() == 6) week = "星期六"
    return week;
}
console.log(getWeek(new Date("2017-08-21")));


评论中心

登录后可评论,请 登录 注册