当我尝试从另一种日期格式创建一个日期对象时,结果日期正在改变它的值
When I try to create a date object from another date format, the result date is changing it's value
当我尝试从另一种日期格式创建日期对象时,结果日期正在改变它的值。如何在不改变日期值的情况下实现这一点?
new Date("Mon, 31 Oct 2016 00:00:00 GMT");
如果结果是2016年10月30日星期日20:00:00 GMT-0400(东部夏令时),我如何从上面得到星期一31日期?
调整已创建日期对象的timezoneOffset应该可以达到目的。但是在使用它的时候要小心,因为你应该确保date对象是从GMT创建的,而不是从某个本地时间创建的。
下面的答案是假设输入日期是GMT
var tempDate = new Date("Mon, 31 Oct 2016 00:00:00 GMT");
var tempTime = tempDate.getTime() + (tempDate.getTimezoneOffset() * 60000);
tempDate = new Date(tempTime);
console.log(tempDate);
它不会更改日期,它只是将其转换为您当地的时区。这是一个有点烦人的行为,我知道的唯一解决方法是将您的系统时区设置为GMT。如果你需要做日期和时间的工作,你可能想看看Moment.js - http://momentjs.com/
相关文章:
- 在JavaScript中解析日期时得到错误的结果
- 检查JavaScript中的日期时间是否相等时出现错误结果
- php中的日期格式给出了错误的结果
- 转换日期时出现错误结果
- JavaScript/jQuery:格式化日期计算结果的最佳方式
- 结果”;加入“;数组与php中javascript中的日期不匹配
- 使用奇怪的控制台日志结果向输入日期添加天数
- 减去日期,返回以月为单位的结果
- 返回不一致结果的日期(取决于是否存在前导零)
- 在 JavaScript 中解析日期字符串的意外结果
- 获取给定日期与今天日期的时间戳结果不同
- 日期格式在 Chrome 中给出的结果与其他浏览器中的结果不同
- 日期() 结果不正确
- Sails-mongo在两个日期之间得到结果
- Javascript 日期在 Internet Explorer 和 Chrome 之间有不同的结果
- 如何将 2 小时添加到当前日期时间并将结果显示回日期时间
- Javascript中这些日期之间的区别?为什么不是所有的浏览器都给出相同的结果
- 比较Javascript中的日期-结果不一致
- 日期结果格式错误
- jQuery的val日期结果为空字符串的一些日期