删除时区 jquery
Posted
技术标签:
【中文标题】删除时区 jquery【英文标题】:Remove timezone jquery 【发布时间】:2018-10-21 12:41:05 【问题描述】:我使用 DateTime 选择器 (tempusdominus-bootstrap-4) 从 API 获取数据,从我在日期时间选择器中选择的日期和时间。但默认情况下,我从今天起 -5 天获得时间。 问题是时区。 这是我的代码
let date = new Date();
console.log(date); //Fri May 11 2018 08:34:43 GMT+0200 (Central European Summer Time)
date.setDate(date.getDate() - 5); //my 'from' date is default -5, but i can pick another date if want
let dateString = date.toISOString().split(".")[0];
let eventsFrom = dateString; //here is my formated date and time in format i need
console.log(eventsFrom); // 2018-05-06T06:34:43
let dateToday = new Date();
let eventsTo = dateToday.toISOString().split(".")[0];
问题是,得到的时间总是少 2 小时... 如果我选择时间 10:00 小时输出是 8:00 小时。
如何删除或禁用时区?
let date = new Date();
console.log(date);
date.setDate(date.getDate() - 5);
let dateString = date.toISOString().split(".")[0];
let eventsFrom = dateString;
console.log(eventsFrom);
let dateToday = new Date();
let eventsTo = dateToday.toISOString().split(".")[0];
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
【问题讨论】:
你的代码有什么问题?您期望得到什么结果? 如果我选择 8:00h 我想得到 8:00h,但我得到了 6:00h。在我的代码中你可以看到let eventsFrom
【参考方案1】:
Date.toISOString
将日期序列化为 UTC 日期时间。
您可以使用Date.toLocaleString()
获取语言环境时间,也可以手动对其进行序列化。
let date = new Date();
date.setDate(date.getDate() - 5);
let dateString = date.toLocaleString();
let eventsFrom = dateString;
console.log(eventsFrom);
let dateToday = new Date();
let eventsTo = dateToday.toLocaleString();
console.log(eventsTo);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
【讨论】:
我用moment(dateString).format("YYYY-MM-DD[T]HH:mm:ss");
@vp_arth 解决了这个问题,请在你的答案中添加这个。谢谢以上是关于删除时区 jquery的主要内容,如果未能解决你的问题,请参考以下文章