所以我有这个代码可以告诉我,我正在这样做。有时当我更改日期时,文本中的代码会给我null。我试图在四个文本字段中循环几周,所以它将是今天隐藏的日期和文本框显示tommorow日期和后几天tommorow这里是代码:
var dayOfWeek_array:Array = new Array("Sunday", "Monday", "Tuesday", "Wensday", "Thursday", "Friday", "Saturday");
var today_date:Date = new Date();
var day_str:String = dayOfWeek_array[today_date.getDay()+0];
var day_str1:String = dayOfWeek_array[today_date.getDay()+1];
var day_str2:String = dayOfWeek_array[today_date.getDay()+2];
var day_str3:String = dayOfWeek_array[today_date.getDay()-4];
var day_str4:String = dayOfWeek_array[today_date.getDay()-3];
myTextField1.text = (""+day_str1);
myTextField2.text = (""+day_str2);
myTextField3.text = (""+day_str3);
myTextField4.text = (""+day_str4);
答案 0 :(得分:1)
对于第3天和第4天,您进行减法。这意味着如果星期几为2,并且将它减少4,则索引为-2。该数组没有这样的索引。它应该给你超出界限的错误:)
答案 1 :(得分:0)
你需要包装'你的' getDay()+ N'值以确保它始终在0-6范围内 即
var tmp = today_date.getDay() + 3;
if(tmp > 6) tmp -= 7;
var day_str3:String = dayOfWeek_array[tmp];
(你可能有一个使用模数的更强大的解决方案,但对于这种情况,这个解决方案清晰而简单)