我想从3个日期(8/1/2011,6/1/2011,7/1/2011)的格式是(毫米/日/年),使用Java脚本找到最小日期。如何使用javascript函数从3个日期中找到最短日期?
2
A
回答
2
未经测试的代码,但你应该明白了吧!
// Initialise an array of dates, with correct values
// You want 3 dates, so put them in here
var MyDates= New Array('15/10/2000','28/05/1999','17/09/2005');
// A function that takes an array of dates as its input
// and returns the smallest (earliest) date
// MUST take at LEAST 2 dates or will throw an error!
function GetSmallestDate(DateArray){
var SmallestDate = new Date(DateArray[0]);
for(var i = 1; i < DateArray.length; i++)
{
var TempDate = new Date(DateArray[i]);
if(TempDate < SmallestDate)
SmallestDate = TempDate ;
}
return SmallestDate ;
}
// Call the function!
alert(GetSmallestDate(MyDates));
1
/**
* Return the timestamp of a MM/DD/YYYY date
*/
function getTime(date) {
var tmp = date.split('/');
var d = new Date(tmp[2], parseInt(tmp[0])-1, tmp[1]);
return d.getTime();
}
// then return the output: getTime('6/7/2000') < getTime('6/7/2001')
详见Date。如果你是一个jQuery UI用户,你可能会发现他们的date parsing method有帮助。
3
转换日期为int,使用Math.min寻找最小:
var dates = ['8/1/2011', '6/1/2011', '7/1/2011']; // dates
dates = dates.map(function(d) {
d=d.split('/');
return new Date(d[2], parseInt(d[0])-1, d[1]).getTime();
}); // convert
var minDate = new Date(Math.min.apply(null, dates)); // smallest > Date
+0
+1使用'apply',的确比我的解决方案更加整洁。但是请记住,'Array.map'在许多浏览器中都不支持,但是(没有IE <9)。 – 2011-04-20 10:38:59
相关问题
- 1. 如何从两个不同日期查找最短和最长日期?
- 2. 如何从物品清单中找到最短日期?
- 3. 如何从数据库中找到最早的日期和最新日期
- 4. 使用javascript从日期时间转换为短日期格式
- 5. JavaScript数组找到最近的日期与当前日期+ dayscounter
- 6. 如何使用VBA查找日期列中的最近日期
- 7. CalendarView最短日期
- 8. UIDatePicker:最短日期
- 9. datepicker日期范围:最大日期的最短日期=开始日期+ 1天
- 10. 如何在JavaScript中将短日期转换为长日期?
- 11. Java中的最短日期
- 12. 如何从两个月的日期找到剩余日期?
- 13. 如何从日期找到一个月的遗体日期?
- 14. JavaScript中的短跑日期
- 15. Javascript日期从当前日期到3年之前的验证
- 16. 如何从完整日期日期字符串中提取短日期?
- 17. 使用JavaScript显示日期+ 3个月?
- 18. 格式日期VARIABLE到短日期VBA
- 19. 在SQL Server中的最大日期和最短日期
- 20. 如何从选定的日期找到到期日?
- 21. 日期函数错误3
- 22. Xcode - 如何找到两个日期之间的中间日期
- 23. 如何从日期数组中找到最早的MMMYY?
- 24. 如何从单个日期列返回最后一个日期?
- 25. 确定日期和日期的最近日期的日期函数
- 26. 如何从日期和日期在sql server中使用数据?
- 27. 带条件的最短日期使用窗口函数
- 28. 如何找到最近的日期?
- 29. 如何使用日期函数获取日期的结束日期
- 30. 绝对最短日期
你不能比较字符串这样,你需要'Date'对象或至少串'YYYY/MM/DD'格式。 – 2011-04-20 10:22:54
@Marcel谢谢,我已经改变了,现在应该工作,这一切都未经测试,虽然 – 2011-04-20 10:49:41
这是好了很多,但仍然不是很强劲:如果你给'Date'一个字符串,你不得不拥有一个实现相关的方法[日期解析](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/parse);你最好使用像Rudie使用的方法,在这里你提供'Date'三个参数(转换为数字)。 – 2011-04-20 10:54:09