【发布时间】:2018-01-15 11:35:27
【问题描述】:
下面是我的代码:
var date = new Date().toLocaleString();
console.log(date); // output: 2018-01-15 16:39:00
var schedule = 2018-01-15 16:39:00 (which is coming from my html form, i putting this date in one input box and getting into variable called schedule).
console.log(schedule); // output: 2018-01-15 16:39:00
if(date === schedule) {
console.log('date is matched');
} else {
console.log('error');
}
这将正确显示为输出://“日期匹配” (我在输入框中输入了这个日期,没有任何日期选择器)。
我的问题是如果我使用日期选择器而不是在输入框中写入日期来执行相同的代码。
我的代码:
var date = new Date().toLocaleString();
console.log(date); // output: 2018-01-15 16:39:00
var schedule = 2018-01-15 16:39:00 (which is coming from my html form,using date picker).
console.log(schedule); // output: 2018-01-15 16:39:00
if(date === schedule) {
console.log('date is matched');
} else {
console.log('error');
}
现在我在控制台中遇到错误。 我正在使用的日期选择器https://www.npmjs.com/package/angularjs-datetime-picker
【问题讨论】:
-
好吧,对我来说,
new Date().toLocaleString();打印出"15/01/2018, 12:39:45",所以由于/和-的差异,它们不可能相等 -
我将这两个值都设为 - ,但如果我在没有日期选择器的情况下放置它的工作,否则不会。
-
@AnteJablanAdamović
toLocaleString()就是这样做的:它将日期转换为根据用户区域设置格式化的字符串。 -
toLocaleString 的输出完全依赖于实现,并在不同的实现中给出不同的结果。您真正要做的是生成一个字符串以与日期选择器中的值进行比较。
标签: javascript angularjs node.js date datetime