从可用的日期列表中获取最小和最大日期

use*_*820 4 coldfusion

我将日期作为列表,格式如下:

09-2012,10-2012,01-2013 
Run Code Online (Sandbox Code Playgroud)

从列表中访问最小和最大日期的更好方法是什么?

Sey*_*sen 6

我不确定哪个更快.这是我下面的列表解决方案,或者您可以将列表转换为数组并使用它.

这可以做到这一点:

<CFSET dates = "" />
<CFLOOP list="09-2012,10-2012,01-2013" index="date">
    <CFSET dates = listappend(dates,DateFormat(createDate(listlast(date,"-"),listfirst(date,"-"),1), "yyyy-mm-dd")) />
</CFLOOP>
<CFSET dates = listsort(dates,"numeric") />
<CFSET min_date = listfirst(dates) />
<CFSET max_date = listlast(dates) />
Run Code Online (Sandbox Code Playgroud)


jon*_*tro 5

我建议将列表中的日期转换为yyyy-mm-dd.

然后你可以使用ListSort对列表进行排序,你将获得listfirst和listlast的第一个和最后一个日期