2011-04-10 147 views
1

我需要设置一个图表,开始在当天午夜,只是在第二天的午夜之前结束...... 我试图做这样的事情: minChartDate = currentDate.fullYear,currentDate.month,currentDate.date,0,0,0,0;根据其他日期设置日期?

其中currentDate:Date;是天当前选中。

我得到一个数字到日期类型之间的隐式强制错误,就像currentDate.fullYear是一个日期,但根据文档它应该是一个数字。或者是我的语法定义这个不正确?也想知道是否有一个更简单的方法来获取最小和最大日期比这个! (我设置这个的原因是它在午夜开始,而不是在系列的第一个数据点)。

我也得到一个奇怪的错误'最大'值类型日期不能在文本中表示..它说我需要一个Date类型的对象的最小值和最大值,所以我真的不知道它在说什么...

回答

1

此代码将使今天的日期对象设置为0:00。

var minChartdate:Date= new Date(); 
minChartdate.hours=0; 
minChartdate.minutes=0; 
minChartdate.seconds=0; 
minChartdate.milliseconds=0; 
trace(minChartdate) 

为了使一个用于第二天:

var minChartdate:Date= new Date(); 
minChartdate.time = minChartdate.time+1000*60*60*24 // one day in milliseconds 
minChartdate.hours=0; 
minChartdate.minutes=0; 
minChartdate.seconds=0; 
minChartdate.milliseconds=0; 
trace(minChartdate); 

此脚本24小时向前移动的时间对象,然后设置小时,分钟,秒,milisecs为0

注意:这不是100%正确的解决方案,因为夏令时更改而调整小时时,它可能会在几天内失败。

+0

您可以在添加24小时之前将d.hours设置为12来为夏令时打补丁。这样,在添加之后,d.hours将是11,12或13,但始终是相同(正确)的一天。 – bart 2011-04-10 09:38:15