使用javascript从日期数组中查找最大日期

使用javascript从日期数组中查找最大日期,javascript,Javascript,有两个日期字段,即“日期1”和“日期2”。单击“检查”按钮后,需要在“最长日期”字段中打印两个日期中的最长日期。因此,如何从一组日期打印最大日期。我曾尝试将日期值放入数组并找出最大值,但似乎有点不对劲。下面是HTML和javascript代码 函数checkMaxDate(){ var dateArray=[]; var date1=dateArray.push(document.getElementById('date1').value); var date2=dateArray.push(

有两个日期字段,即“日期1”和“日期2”。单击“检查”按钮后,需要在“最长日期”字段中打印两个日期中的最长日期。因此,如何从一组日期打印最大日期。我曾尝试将日期值放入数组并找出最大值,但似乎有点不对劲。下面是HTML和javascript代码

函数checkMaxDate(){
var dateArray=[];
var date1=dateArray.push(document.getElementById('date1').value);
var date2=dateArray.push(document.getElementById('date2').value);
var maxDate=Math.max.apply(Math,dateArray);
document.getElementById('maxdate')。value=maxdate;
}
日期1:
日期2:
最长日期:

检查您是否已接近。尝试在newDate中应用函数,并使用
null
而不是
Math
。您还应该
newdate(pushedArrayElement)
作为日期对象,而不是将
Strings
推送到日期数组中

var maxDate=新日期(Math.max.apply(null,dateArray))


请注意,出现错误是有原因的,因为不能保证用户输入的是合法的日期格式。

您已经接近了。尝试在newDate中应用函数,并使用
null
而不是
Math
。您还应该
newdate(pushedArrayElement)
作为日期对象,而不是将
Strings
推送到日期数组中

var maxDate=新日期(Math.max.apply(null,dateArray))


请注意,之所以会出现错误,是因为不能保证用户输入的是合法的日期格式。

请尝试包装
document.getElementById('date1')。在
new date().getTime()中使用

另外,
input type=“date”
接受值为
yyyy-mm-dd
;尝试使用
.toJSON()
String.prototype.slice()
#maxdate
的日期设置为
yyyy-mm-dd
从返回的值
maxdate

函数checkMaxDate(){
var dateArray=[];
var date1=dateArray.push(新日期(document.getElementById('date1').value.getTime());
var date2=dateArray.push(新日期(document.getElementById('date2').value.getTime());
var maxDate=Math.max.apply(Math,dateArray);
document.getElementById('maxdate')。value=newDate(maxdate).toJSON().slice(0,10);
}
日期1:
日期2:
最长日期:

选中
尝试在
new Date().getTime()中包装
document.getElementById('date1')。value

另外,
input type=“date”
接受值为
yyyy-mm-dd
;尝试使用
.toJSON()
String.prototype.slice()
#maxdate
的日期设置为
yyyy-mm-dd
从返回的值
maxdate

函数checkMaxDate(){
var dateArray=[];
var date1=dateArray.push(新日期(document.getElementById('date1').value.getTime());
var date2=dateArray.push(新日期(document.getElementById('date2').value.getTime());
var maxDate=Math.max.apply(Math,dateArray);
document.getElementById('maxdate')。value=newDate(maxdate).toJSON().slice(0,10);
}
日期1:
日期2:
最长日期:

选中
您的值将是字符串,而不是日期。用户是否自己输入日期?如果是,您如何知道他们将使用哪种格式?是,用户将输入日期。格式为dd-mm-yyyyyyy您的值将是字符串,而不是日期。用户是否自己输入日期?如果是,您如何知道他们将使用哪种格式?是,用户将输入日期。格式为dd-mm-yyyyyy这两个输入是字符串而不是日期这一事实是什么?@SterlingArcher
input type=“date”
接受将日期设置为
yyy-mm-dd
,而不是
new-date()的值,非常感谢,这帮助很大。这两个输入是字符串这一事实是什么,不是日期?@SterlingArcher
input type=“date”
接受将日期设置为
yyyy-mm-dd
,而不是
new-date()的值。非常感谢,这帮了大忙。非常感谢。这很有帮助,也很有效。非常感谢。这帮了大忙,而且奏效了。