JavaScript Date()格式和计算
JavaScript Date() formatting and calculations
我想从input
获取日期,其格式是dd-mm-yyyy,当这是通过引导日期选择器设置并基于此日期计算一周结束时。不知怎的,我得到了一些奇怪的结果。
$('#date-start').on('changeDate', function(){
var objThs = $(this);
if(objThs.parent().is('.reportDateWeeks')){
var arrDateEl = objThs.val().split("-"),
datStartDate = new Date(arrDateEl[2], arrDateEl[1] -1, arrDateEl[0]),
datEndDate= new Date(datStartDate.setDate(datStartDate.getDate()+7)),
datEndDateFormated = datEndDate.getDate() + '-' + datEndDate.getMonth() + 1 + '-' + datEndDate.getFullYear();
console.log('start ' + objThs.val());
console.log('end' + datEndDateFormated);
}
});
。如果我选择04-05-2014,控制台返回我:
开始04-05-2014
我看到两个问题。
- 您在结果中更改了月份和日期。
- 您应该在
datEndDate.getMonth() + 1
周围添加括号。否则,1
将作为字符串添加,而不是数字(在您的示例中产生41
)。
所以固定的可能看起来像:
var datEndDateFormated = (datEndDate.getMonth() + 1) + '-'
+ datEndDate.getDate() + '-'
+ datEndDate.getFullYear();
我找到解决方案了…
datEndDateFormated = datEndDate.getDate() + '-' + datEndDate.getMonth() + '-' + datEndDate.getFullYear();
我是如此盲目…不好意思
使用parseInt方法将字符串转换为整数,然后对其加1
datEndDateFormatted = datEndDate.getDate() + '-' + parseInt(datEndDate.getMonth() + 1) + '-' + datEndDate.getFullYear();
相关文章:
- 如何使用javascript或html下载PDF格式的填写表单
- 货币代码为欧元-金额的格式不应包含小数
- 根据元素和容器大小计算边距
- Json数据包含日期和时间格式
- 以HH:mm格式计算时差
- 以日期计算的天数更改日期格式
- 在Javascript中用YYYY-mm-dd格式计算年龄
- 使用dd/mm/yyyy格式计算两个日期之间的差异-dons't account for years
- 计算高图表中的百分比和格式
- 以 HTML 格式显示计算结果 (javascript)
- 在 Javascript 中以 24 小时时间格式计算时间差异
- 如何计算 24 小时格式的两个时间之间的差异
- Javascript 中的总计计算,用于处理货币格式(MinusSignNegative)
- 在 Javascript 中转换日期格式并计算两个日期之间的差异
- 计算两个给定时间的以毫秒为单位的时间差;DD/MM/YYYY HH:MM:ss:ms”;javascript格式
- 根据出生日期计算年龄,日期格式为年月日
- 以完整格式显示时间计算
- 输入日期格式mm/yyyy计算月份jquery
- JavaScript Date()格式和计算
- 在自执行函数中使用javascript计算经过的年份(XXXX格式)