我想从格林尼治标准时间获取日期,但它返回的日期是提前一天。如何始终获取GMT字符串中提到的日期?
new Date("Mon, 27 Aug 2018 22:00:00 GMT").getDate()
此命令返回28
作为输出,但我想要27
。
有什么需要补充的吗?
预先感谢。
答案 0 :(得分:2)
尝试这个。我认为您的问题将得到解决。
<script>
function myFunction() {
var d = new Date();
var n = d.getUTCDate();
document.getElementById("demo").innerHTML = n;
}
</script>
答案 1 :(得分:1)
创建new Date()
时,浏览器会根据设备时区返回日期。您可以使用Date.getTimezoneOffset()
来获取GMT偏移时间差,然后通过乘以该值来调整时间。
// Your date
var myDate = new Date("Mon, 27 Aug 2018 22:00:00 GMT")
// Convert your date to local using getTimezoneOffset() and multiply with 60000 to get time adjusted GMT 0
var myDateLocal =new Date( myDate.valueOf() + myDate.getTimezoneOffset() * 60000 ).getDate();
document.getElementById("myDate").innerHTML=myDateLocal;
<h1 id="myDate" ></h1>