javascript中将时间戳转换成日期格式

1. javascript中将时间戳转换成日期格式



function timestampToTime(timestamp) {

        var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为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;

    }


之前试了几种方法,没当日期 2020-06-17 08:17:04   里面有数据<10时,那个0就不会补上去,现在用这种方法解决了



// 2.将日期转换成时间戳 也很简单

var strtime = '2020-04-23 18:55:49:123';

var date = new Date(strtime);

//传入一个时间格式,如果不传入就是获取现在的时间了,这样做不兼容火狐。

// 可以这样做

var date = new Date(strtime.replace(/-/g, '/'));

// 有三种方式获取,在后面会讲到三种方式的区别

time1 = date.getTime();

time2 = date.valueOf();

time3 = Date.parse(date);

console.log("time1:"+time1);

console.log("time2:"+time2);

console.log("time3:"+time3);

/*

三种获取的区别:

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

第三种:只能精确到秒,毫秒将用0来代替

比如上面代码输出的结果(一眼就能看出区别):

1398250549123

1398250549123

1398250549000

*/


/*  3. Date()参数形式有7种

  new Date("month dd,yyyy hh:mm:ss");

  new Date("month dd,yyyy");

  new Date("yyyy/MM/dd hh:mm:ss");

  new Date("yyyy/MM/dd");

  new Date(yyyy,mth,dd,hh,mm,ss);

  new Date(yyyy,mth,dd);

  new Date(ms);


  比如:

  new Date("September 16,2016 14:15:05");

  new Date("September 16,2016");

  new Date("2016/09/16 14:15:05");

  new Date("2016/09/16");

  new Date(2016,8,16,14,15,5); // 月份从0~11

  new Date(2016,8,16);

  new Date(1474006780); */

你可能感兴趣的:(javascript中将时间戳转换成日期格式)