在Javascript中具有此字符串
2011-10-10T14:48:00-06:00
如何创建没有时区的日期?我要删除-06:00
。
答案 0 :(得分:1)
快速而肮脏的方式:
const dt = "2011-10-10T14:48:00-06:00"
dt.slice(0, 19); // "2011-10-10T14:48:00"
答案 1 :(得分:0)
JavaScript始终使用当前服务器(或浏览器)时区创建Date对象。即如果我在笔记本电脑上进行new Date("2011-10-10T14:48:00-06:00")
的操作,则结果为Mon Oct 10 2011 22:48:00 GMT+0200
。但是,如果我做new Date("2011-10-10T14:48:00")
,我将得到Mon Oct 10 2011 14:48:00 GMT+0200
。因此,我的Date对象始终将时区设置为笔记本电脑的时区,但是-06:00
在解析阶段会影响字符串日期的解释。
除了设置TZ=<...>
环境变量(仅适用于Node.js)外,没有其他方法可以影响此行为。 JavaScript Date
对象未提供任何可用于时区的方法。
如果您需要更复杂的时区处理,请考虑使用momentjs-timezone软件包。但是请注意,它很大,有时很慢。
答案 2 :(得分:-1)
请检查此代码示例。
var dateObj = new Date();
var month = dateObj.getUTCMonth() + 1;
var day = dateObj.getUTCDate();
var year = dateObj.getUTCFullYear();
newdate = year + "/" + month + "/" + day;