图片是后来添加上去的
遇到的问题:
今天,搞了一个属于自己的日历,碰到一个比较纠结的问题,就是那个日期(指的是“日”不是“年月”)面板上的日期和星期面板上的星期怎么也不对应,查看其他的月份,结果是日期面板上的日期是静态的,比方说每个月的第一天不管怎样都和星期一对应,依次往后排是第二天,第三天……
日期面板是这样规定日期的:
我的日历的日期每一天都是在一个按钮上setText标识的,这样的话,绘制按钮时,就必须知道每个月的第一天是星期几,从而根据他来开始setText按钮,比方说第一天是星期三,那么就应该从把第三个按钮setText为“1”,第四个按钮setText为“2”依次类推,那么第一和第二个按钮就应该setText为“”(空)。
系统提供了一个类Date其中有两个方法:getDay()和getDate()(这两个方法现在都已经过时,但是还能用只是在那个方法调用时会在方法体上有一个类似于删除意思的横线,表明已经过时),其中getDate()是返回返一个日期对象
比方说Date day=new Date(2010,07,02)中的“日”在这里就会返回一个2,代表是这个年月的第二天。那么getDay()方法就是返回日期对象所对应的星期几,还以上面的day为例,当调用day.getDay()时就会返回一个“1”,代表2010年7月2日是星期一(本来应是再加上1900表示3910的,在这里就权且是2010吧),返回值 (0 = Sunday, 1 = Monday, 2 = Tuesday, 3 = Wednesday, 4 = Thursday, 5 = Friday, 6 = Saturday) 表示一周中的某一天。
问题分析:
我的问题就是错误的调用了getDate()方法企图用firstday.getDate()(firstday是一个日期对象,表示每个月的第一天)得到每个月的第一天是星期几的值,可想而知得到的值都是'1",这样在setText第一天的按钮时就总是和星期一对应啦,当然改成firstday.getDay()就没有问题啦
一点感触:
难怪那两个方法都被标记为过时,因为很容易就会让人混淆,而修改后的方法好像是注意到了这一点,就比较容易区分啦
- 大小: 34.2 KB
分享到:
相关推荐
`Calendar`类提供了多种方法来设置日期和时间,这些方法比`Date`类更灵活且易于理解: ```java Calendar c1 = Calendar.getInstance(); c1.set(2009, 3 - 1, 9); // 设置为2009年3月9日 ``` 这里的`set`方法接受三个...
`Date`类中的方法,如`getHours()`, `getMinutes()`, `getSeconds()`, `getDate()`, `getMonth()`, `getFullYear()`等,都是非静态的,这意味着我们需要先创建`Date`对象,然后通过这个对象来调用这些方法获取日期和...
通过get方法,如`getYear()`(需加1900)、`getMonth()`(需加1)、`getDate()`、`getHours()`、`getMinutes()`、`getSeconds()`以及`getDay()`(返回0-6,0代表周日)来获取年、月、日、小时、分钟、秒和星期几。...
除了`getDay()`,`Date`对象还提供了许多其他有用的方法,如`getFullYear()`获取四位数的年份,`getMonth()`获取月份(注意月份是从0开始的),`getDate()`获取日期的天数,`getHours()`、`getMinutes()`和`...
在JavaScript中,`Date`对象提供了多种方法来获取和设置日期及时间。本文将详细介绍如何将`Date`对象转换成字符串格式,这对于数据展示、存储以及传输等场景非常有用。 #### 1. 基本概念 在JavaScript中,`Date`...
var week; if(new Date().getDay()==0) week="星期日" if(new Date().getDay()==1... document.write(new Date().getYear()+"年"+(new Date().getMonth()+1)+"月"+new Date().getDate()+"日 "+week);
希望以上对PHP使用getdate()函数获取当前日期和时间作为关联数组的方法的介绍,能够帮助到正在学习或使用PHP的朋友们。通过实践和应用这些知识点,可以更好地掌握PHP在时间处理方面的能力,进而提高编程效率和程序的...
JavaScript 的 `Date` 对象提供了多种方法来获取和设置日期时间,但原生 API 并没有直接提供日期格式化的功能。为了满足这一需求,开发者通常会通过自定义的方式来实现日期格式化。 本文档主要介绍并总结了三种常见...
接下来详细介绍 `Date` 对象中一些常用的属性和方法。 ##### `Date.getDate()` 返回当前日期对象对应的月份中的具体日期(即几号)。 **示例代码:** ```javascript var date = new Date(); // 假设今天是2021-12-...
- 使用Date对象的方法输出和修改日期: ```javascript var date = new Date(); console.log(date.toString()); // 格式化的日期字符串 console.log(date.toLocaleString()); // 根据本地设置的日期字符串 ...
此外,还有诸如`getDate()`、`getDay()`、`getHours()`等方法用于获取日期和时间的各个方面。 对于本地时间与UTC时间,有些方法会有两个版本,比如`getDate()`和`getUTCDate()`,`getFullYear()`和`getUTCFullYear...
`Date`对象本身并不直接包含属性,但是它有一些内置的方法可以用来获取和设置日期的不同部分。不过,在提供的示例中提到了`constructor`和`prototype`两个属性,这里简单解释一下这两个属性。 1. **constructor ...
通过`new Date()`方法创建`Date`对象,并利用`Date`对象提供的各种方法,开发者可以轻松地处理和操作日期与时间。这些方法不仅能够帮助开发者获取日期和时间的具体信息,还支持将日期和时间格式化为易于阅读的形式。...
例如,`new Date()`用于创建一个表示当前日期和时间的新`Date`对象,`getDate()`获取月份中的某一天,`getMonth()`获取月份(注意,JavaScript的月份是从0开始的),`getFullYear()`获取四位数的年份,`getDay()`则...
要获取本月的第一天,我们可以使用`getDate()`方法获取日期部分,`getMonth()`获取月份(注意月份是从0开始的),以及`getFullYear()`获取年份。然后,根据所需的星期几,我们可以进行计算。JavaScript中的`getDay()...
- 原生JavaScript同样有对应的`date.getDay()`, `date.getMonth()`, `date.getFullYear()`方法。 9. **时间戳转换** - `moment.unix()` 和 `moment.utc()` 可以通过`new Date(timestamp * 1000)`创建一个日期对象...
getDay()方法返回Date对象中星期的数字表示,其中0代表星期日,1代表星期一,以此类推,直到6代表星期六: ```javascript var myDate = new Date("July 21, 1983 01:15:00"); document.write(myDate.getDay()); // ...
`Date`类提供了一系列的`get`方法来获取日期和时间的各个部分,如`getYear()`返回年份(需加1900),`getMonth()`返回月份(需加1),`getDate()`返回日期,`getHours()`、`getMinutes()`和`getSeconds()`分别返回...
- `Date.UTC()`方法则接受年、月(0为基础)、日、时、分、秒和毫秒,返回UTC时间对应的毫秒数。 2. **日期对象的继承方法** - `toLocaleString()`:返回根据用户地区设置的日期和时间字符串,不含时区信息。 - ...