前几天写一个日期的插件,被Date的一些函数搞得晕头转向,总结一下:
1.知识点
- new Date() ,返回中国标准时间的当前日期和时间,Tue Apr 14 2020 22:22:37 GMT+0800 (中国标准时间)
- new Date(year,month,day) ,返回中国标准时间的指定日期的00:00:00,比如,我输入new Date(2020,4,1),则会返回Fri May 01 2020 00:00:00 GMT+0800 (中国标准时间),这里一定要注意,month的取值为0-11,所以如果要获取yyyy年mm月dd日,应该为new Date(yyyy,mm-1,dd)
- new Date(“2020-4-1”) ,返回指定日期的00:00:00,Wed Apr 01 2020 00:00:00 GMT+0800 (中国标准时间)
- getDate() ,从 Date 对象返回一个月中的某一天 (1 ~ 31),new Date(“2020-4-12”).getDate(),返回12
- getDay() ,从 Date 对象返回某一天是周几 (0 ~ 6),分别对应周日到周六。new Date(“2020-4-12”).getDay(),返回0,即为周日
- getMonth() ,从 Date 对象返回月份 (0 ~ 11),这里一定要注意。new Date(“2020- 4 -12”).getMonth(),返回 3 ,如果在页面上显示,一定要记得加1
- getFullYear() ,从 Date 对象返回年份。new Date(“2020-4-12”).getFullYear(),返回 2020
- getHours(),getMinutes(),getSeconds(),getMilliseconds() ,从 Date 对象返回小时,分钟,秒,毫秒,这里没啥好说的
- getTime() ,从 Date 对象返回 1970 年 1 月 1 日至今的毫秒数。
- **toString() **,把Date对象转成字符串,newDate().toString返回字符串 “Tue Apr 14 2020 22:55:16 GMT+0800 (中国标准时间)”
- **toTimeString()和toDateString() **,分别是把Date对象的时间部分和日期部分转成字符串,newDate().toString返回字符串 “Tue Apr 14 2020 22:55:16 GMT+0800 (中国标准时间)”
- valueOf(),返回Date对象的时间戳
小坑啊小坑
获取某月的最后一天
从上面我们已经知道,newDate(“yyyy-MM-dd”),返回指定日期与时间,那当传的day=0时,会自动往前推一天,就是上个月的最后一天啦,当然就可以通过getDate获取到是几了,所以,假如要获取4月的天数,那么就是newDate(“2020-5-0”).getDate(),
同样newDate(yyyy,MM,dd)也是返回指定日期与时间,但是,这里要注意month取值0-11,所以,假如获取4月时间,这里应该是newDate(2020,4,0).getDate(),是的,你没看错,这里传的就是4
获取某月的第一天是周几
其实坑是一样的,都是month取值为0-11,周几取值0-6,比如获取2020年4月的第一天是周几就是newDate(2020,3,1).getDay()或者newDate(“2020-4-1”).getDay()
目前就想到这么多,以后遇到再补充了