| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- import soloarlunar from './solarlunar.js'
- var monthday = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
- var weekarea = new Array(7);
- var nowdate = new Date();
- var weekName = ['日', '六', '五', '四', '三', '二', '一'];
- var xday = ['日', '一', '二', '三', '四', '五', '六']
- var dateInfo = {
- //闰年判断
- getRunnian(yy) {
- if (yy % 4 == 0 && yy % 100 !== 0 || yy % 400 == 0) {
- monthday[1] = 29;
- } else {
- monthday[1] = 28;
- }
- },
- setTextData(time){
- let date=new Date(time);
- let month=date.getMonth()>8?(date.getMonth()+1):('0'+(date.getMonth()+1));
- let day=date.getDate()>9?date.getDate():('0'+date.getDate());
- return date.getFullYear()+'年'+month+'月'+day+'日';
- },
- //获取次日名称
- getFormatTimeText(time) {
- let ytime = Number(time.replace(':', ''));
- var c1 = Number(ytime / 100).toFixed(0)
- c1 = c1 < 10 ? ('0' + c1) : (c1 > 23 ? ('次日' + ((c1 - 24) > 9 ? (c1 - 24) : ('0' + (c1 - 24)))) : c1);
- c1 = c1 + ':' + (ytime % 100 ? '30' : '00')
- return c1;
- },
- getDayDate(date = {yy: nowdate.getFullYear(),mm: nowdate.getMonth() + 1,dd: nowdate.getDate()}) {
- let {
- yy,
- mm,
- dd
- } = date;
- date.xx = xday[this.getXingqi(yy, mm, dd)],
- date.date = this.getDate(yy, mm, dd),
- date.IDayCn= soloarlunar.solar2lunar(yy,mm,dd).IDayCn,
- date.IMonthCn= soloarlunar.solar2lunar(yy,mm,dd).IMonthCn;
- return date;
- },
- getWeekDate(yy= nowdate.getFullYear(),mm=nowdate.getMonth() + 1,dd= nowdate.getDate()) {
- var weekList = [];
- var xx = this.getXingqi(yy, mm, dd);
- if (xx == 0) {
- xx = 7;
- }
- var datetime = 0;
- var dateString='';
- //#ifdef APP-PLUS
- dateString=yy + '/' + mm + '/' + dd;
- //#endif
- //#ifndef APP-PLUS
- dateString=yy + '-' + mm + '-' + dd;
- //#endif
- for (var i = 0; i < 7; i++) {
- datetime = new Date(dateString).getTime() - (xx - i - 1) * 24 * 60 * 60 * 1000;
- let sy = new Date(datetime).getFullYear(),
- sm = new Date(datetime).getMonth() + 1,
- sd = new Date(datetime).getDate();
- weekList.push(this.getDayDate({yy: sy,mm: sm,dd: sd}))
- }
- return weekList;
- },
- getMonthDate(date = {yy: nowdate.getFullYear(),mm: nowdate.getMonth() + 1,dd: nowdate.getDate()}) {
- let {
- yy,
- mm,
- dd
- } = date;
- this.getRunnian(yy);
- var monthList = [];
- var datetime = 0;
- var nowMonth_first_xq = this.getXingqi(yy, mm, 1),
- nowMonth_last_xq = this.getXingqi(yy, mm, monthday[mm - 1]);
- if (nowMonth_first_xq == 0) {
- nowMonth_first_xq = 7;
- }
- if (nowMonth_last_xq == 0) {
- nowMonth_last_xq = 7;
- }
- var dateString='';
- //#ifdef APP-PLUS
- dateString=yy + '/' + mm + '/' + 1;
- //#endif
- //#ifndef APP-PLUS
- dateString=yy + '-' + mm + '-' + 1;
- //#endif
- for(var i=1-nowMonth_first_xq;i<monthday[mm - 1]+(7-nowMonth_last_xq);i++){
- datetime = new Date(dateString).getTime() + i * 24 * 60 * 60 * 1000
- var sy = new Date(datetime).getFullYear(),
- sm = new Date(datetime).getMonth() + 1,
- sd = new Date(datetime).getDate();
- monthList.push(this.getDayDate({yy: sy,mm: sm,dd: sd}))
- }
- return monthList;
- },
- getXingqi(yy, mm, dd) {
- return (new Date(yy + '-' + (Number(mm) > 9 ? mm : '0' + Number(mm) ) + '-' + (Number(dd) > 9 ? dd : '0' + Number(dd))).getDay())
- },
- getDate(yy, mm, dd) {
- return yy + '-' + (Number(mm) > 9 ? mm : '0' + Number(mm) ) + '-' + (Number(dd) > 9 ? dd : '0' + Number(dd));
- }
- }
- export default dateInfo;
|