Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript日期到时间戳计算不需要';任何一个月的第八和第九天都不工作_Javascript_Jquery_Date_Timestamp_Unix Timestamp - Fatal编程技术网

JavaScript日期到时间戳计算不需要';任何一个月的第八和第九天都不工作

JavaScript日期到时间戳计算不需要';任何一个月的第八和第九天都不工作,javascript,jquery,date,timestamp,unix-timestamp,Javascript,Jquery,Date,Timestamp,Unix Timestamp,我有以下JavaScript: 当选择日期时,一个变量会提示说时间戳-但是,在任何月份的第8和第9天,时间戳总是错误的 有人能看出我哪里出了错吗 提前感谢。在您的情况下,这个问题可以通过将其转换为数字来解决——将parseInt(选择[0])替换为number(选择[0]) 如果不将第二个参数传递给parseInt(基础),javascript将猜测它。可能是猜错了。将10作为第二个参数传递给所有parseInt调用(您可以去掉从月份截断零的代码-顺便说一句,添加此代码从月份截断零也可以) 更新

我有以下JavaScript:

当选择日期时,一个变量会提示说时间戳-但是,在任何月份的第8和第9天,时间戳总是错误的

有人能看出我哪里出了错吗


提前感谢。

在您的情况下,这个问题可以通过将其转换为数字来解决——将
parseInt(选择[0])
替换为
number(选择[0])


如果不将第二个参数传递给parseInt(基础),javascript将猜测它。可能是猜错了。将10作为第二个参数传递给所有parseInt调用(您可以去掉从月份截断零的代码-顺便说一句,添加此代码从月份截断零也可以)


更新的fiddle:

您的问题是将字符串解析为数字。如果未指定基数,且字符串以零开头,则会将其解析为八进制数:

parseInt("017") === 15

parseInt("08") === 0 // because 8 is not a valid digit in octal numbers
解决方案是指定基数10:

parseInt("08", 10) === 8

更新的fiddle:

实际javascript以八进制值解释这些变量,请使用将它们转换为十进制。我相信您正在获取一个字符串,并将其解析为一个值。像这样的东西。那么请做下面的事情

parseInt(month_val);
这是我用来检查有效日期的f代码片段

    var birthdate = element.value.split("-");
    var JDate = new Date(parseInt(birthdate[2],10), parseInt(birthdate[0],10) -1, parseInt(birthdate[1],10));
    valid = (parseInt(birthdate[0],10) - 1 == JDate.getMonth() && parseInt(birthdate[1],10) == JDate.getDate() && parseInt(birthdate[2],10) == JDate.getFullYear());
    return valid;

我不知道为什么要尝试解析日期参数(通过拆分)?参数inst包含以下字段:

  • 所选日期
  • 所选月份
  • 仪表选定年份
  • 还有更多

    UTC日期(日期选择年、日期选择月、日期选择日)


在结果的onSelect事件中,您想做什么?Date对象?很有趣——我从来没有想到JavaScript假定
parseInt(“07”)
是一个八进制数——正确。我所要做的只是从一天和一个月的前面删除0。。。