JavaScript时间戳使用

First:

应用函数

function IsAble()
	{
		
		var rtn = false;
		
		var myDate = new Date("2021-01-26 11:59:59.999");
		alert(myDate);
		
		if(Date.parse(myDate) > 1)// 1602658800000)//2021-01-10 14:00:00
		{
			rtn = true;
		}
		
		return rtn;
	}

1.JavaScript的事件对象转换为时间戳

1.1时间对象转时间戳的五种写法

// 定义一个时间对象 dt,然后依次演示各种将 dt 转换为时间戳的写法
var dt = new Date("2020-01-26 23:59:59.999");

// 写法一,精确到毫秒,得到 13 位时间戳 1562255999999
console.log(dt.getTime());

// 写法二,精确到毫秒,得到 13 位时间戳 1562255999999
console.log(dt.valueOf());

// 写法三,精确到毫秒,得到 13 位时间戳 1562255999999
console.log(Number(dt));

// 写法四,精确到毫秒,得到 13 位时间戳 1562255999999
console.log(+dt);

// 写法五,精确到秒,得到 13 位时间戳 1562255999000,后三位固定为 000
console.log(Date.parse(dt));

1.2获得当前时间的时间戳

new Date().getTime();   // 方法一
new Date().valueOf();   // 方法二
Date.parse(new Date()); // 方法三
Number(new Date());     // 方法四
+new Date();            // 方法五

执行结果如下

1.3获得10位数的时间戳

在JavaScript中,通过时间对象转换得到的时间戳都是13位的,但有时侯我们也需要获得精确到秒的10位时间戳,比如微信支付使用的就是10位时间戳,

获得10位时间戳的大致思路:

(1)截取前10位,

(2)除以1000

// 将 13 位时间戳除以 1000 然后再取整,得到 10 位时间戳数字
parseInt(+new Date()/1000);

// 将 13 位时间戳转换为字符串截取前 10 位,得到 10 位时间戳字符串
(+new Date()).toString().substring(0,10); // 截取第 0~9 位
(+new Date()).toString().substr(0,10);    // 从第 0 位开始截取 10 位

2.JavaScript的时间戳转换为事件对象

在 JavaScript 中,时间戳转时间对象的方法非常简单,直接将一个时间戳做为Date的参数即可,示例如下:

// 注意:参数中的时间戳必须是 13 位的,多一位或少一位都不行
new Date(1562169599000);

// 将时间戳转换为更加直观形象的本地时间
new Date(1562169599000).toLocaleString();

执行结果图

 

猜你喜欢

转载自blog.csdn.net/SSbandianH/article/details/113102216
今日推荐