Javascript 日期处理之时区问题_Javascript教程-查字典教程网
Javascript 日期处理之时区问题
Javascript 日期处理之时区问题
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下://dateObj是一个日期对象,days表示给这个日期加多少天,比如说4,5(天)functiondateAdd(dat...

复制代码 代码如下:

//dateObj是一个日期对象,days表示给这个日期加多少天,比如说4,5(天)

function dateAdd(dateObj,days){

var tempDate = dateObj.valueOf();

tempDate = tempDate + days * 24 * 60 * 60 * 1000;

tempDate = new Date(tempDate);

return tempDate;

}

//然后使用,创建一个日期对象

var dateValue = document.getElementById("XXYY").value.split("-");

var custArvDateTwoValue = new Date(dateValue[0],dateValue[1]-1,dateValue[2]);

//调用dateAdd,加两天

custArvDateTwoValue = dateAdd(custArvDateTwoValue,2);

var year = custArvDateTwoValue.getFullYear();

var month = custArvDateTwoValue.getMonth() + 1;

var days = custArvDateTwoValue.getDate();

month = month <= 9 ? "0"+month : month;

days = days <= 9 ? "0"+days : days;

document.getElementById("XX").value = year + "-" + month + "-" +days;

我在测试的时候发现,当document.getElementById("XXYY").value的值是2009-10-31

返回的居然是2009-11-01

其它情况都是正确的,比如说输入2009-10-01,返回2009-10-03

我还试了今天和明年的每个月最后一天,只有2009-10-31出问题(我试了很多时间,只有这个时间有问题,难度这个月有32天)

当我试2009-10-31,返回的是2009-11-01也是正确的

最后发现原来是时区的问题,所以大家以后发现这类问题,可以看下时区是不是没对应上。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类