有时候想获取一下当前时间,如果仅仅用JS的Date对象拿当前时间,相当于取客户端的时间。但客户端的时间并不一定可靠,所以希望能拿服务端的时间,但是如果后台没提供获取时间的接口,那么其实可以用下面的方法去获取。
思路就是通过ajax请求,拿Responce中的Date, 变相的拿出了服务端的时间。
原生JS实现:
getServerTime(){
return new Promise((resolve,reject)=>{
var xhr = new XMLHttpRequest();
if( !xhr ){
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
xhr.open("HEAD", location.href, true);
xhr.onreadystatechange=function(){
resolve(xhr.getResponseHeader("Date"))
}
xhr.send(null);
})
}
getServerTime().then(date=>{
let curYear = new Date(date).getFullYear();
})
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。