【发布时间】:2018-05-03 01:03:40
【问题描述】:
在 JavaScript 中,我有两个变量(aankomstDatum 和 vertrekDatum),其中包含“dd-mm-yy”格式的签入日期和签出日期。这些变量来自带有 jQuery 日期选择器的文本输入字段。
我想根据 aankomstDatum 和 vertrekDatum 计算住宿的价格,所以我仍然需要将 vars 转换为日期是正确的吗?我从 dd-mm-yy 开始使用以下代码:
var parts = aankomstDatum.split('-');
var aankomstDatumDate = new Date(parts[2],parts[0]-1,parts[1]);
document.getElementById("aankomstDate").innerHTML = aankomstDatumDate;
当我输出 aankomstDatumDate 时,我得到以下格式的工作日期:2017 年 11 月 11 日星期六 00:00:00 GMT+0100(浪漫标准时间)。
我的两个问题:
1) 这一步有必要吗?我的思路是否正确,即我从日期开始并先将其转换为日期,然后才能使用它们来计算预订价格?
2) 输出日期 Sat Nov 11 2017 00:00:00 GMT+0100(浪漫标准时间)是否可以用于计算预订价格?还是以“dd-mm-yy”之类的格式更好?如果是这样,我该如何实现?
【问题讨论】:
-
标题中问题的答案是“NO”。假设输入格式是 dd-mm-yy,那么
new Date(parts[2],parts[0]-1,parts[1])应该是new Date(parts[2],parts[1]-1,parts[0])(即你有月份和日期的转置)。此外,使用 2 位数年份也不是一个好主意。鉴于 OP 中的信息,我认为不可能回答其他 2 个问题。见How do I ask a good question?
标签: javascript date datetime type-conversion var