dateUtil.js
5.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
export function getDateYYYYMMDDHHMISS (){
let date = new Date();
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
let hour = date.getHours();
let minute = date.getMinutes();
let second = date.getSeconds();
if (month < 10) {
month = '0' + month;
}
if (day < 10) {
day = '0' + day;
}
if (hour < 10) {
hour = '0' + hour;
}
if (minute < 10) {
minute = '0' + minute;
}
if (second < 10) {
second = '0' + second;
}
return year + "" + month + "" + day + "" + hour + "" + minute + "" + second;
}
export function getDateStr() {
let date = new Date();
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
let hour = date.getHours();
let minute = date.getMinutes();
let second = date.getSeconds();
if (month < 10) {
month = '0' + month;
}
if (day < 10) {
day = '0' + day;
}
if (hour < 10) {
hour = '0' + hour;
}
if (minute < 10) {
minute = '0' + minute;
}
if (second < 10) {
second = '0' + second;
}
return year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second;
}
export function getDateYYYYMMDD() {
let date = new Date();
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
if (month < 10) {
month = '0' + month;
}
if (day < 10) {
day = '0' + day;
}
return year + "-" + month + "-" + day;
}
export function add0(m) {
return m < 10 ? '0' + m : m
}
export function dateFormat (_time) {
let _date = new Date(_time);
let y = _date.getFullYear();
let m = _date.getMonth() + 1;
let d = _date.getDate();
return y + '-' + add0(m) + '-' + add0(d);
}
export function dateFormatSubSec (_time) {
if (!_time) {
return ''
}
let _date = new Date(_time);
_date.setSeconds(_date.getSeconds() - 1);
return dateFormat(_date);
}
export function timeFormat (_time) {
let _date = new Date(_time);
let h = _date.getHours();
let mm = _date.getMinutes();
let s = _date.getSeconds();
return add0(h) + ':' + add0(mm) + ':' + add0(s);
}
export function timeMinFormat (_time) {
let _date = new Date(_time);
let h = _date.getHours();
let mm = _date.getMinutes();
return add0(h) + ':' + add0(mm);
}
export function dateSubOneDay (_startTime, _endTime, feeFlag) {
if (!_endTime || _endTime == '-') {
return _endTime
}
let dateTime = new Date(_endTime);
let startTime = new Date(_startTime);
//如果开始时间是31日 结束时间是30日 不做处理
let _startTimeLastDay = startTime.getDate();
let _endTimeLastDay = dateTime.getDate();
if (_startTimeLastDay == 31 && _endTimeLastDay == 30) {
return dateFormat(dateTime);
}
//2月份特殊处理
let _endTimeMonth = dateTime.getMonth();
if (_endTimeMonth == 1 && _endTimeLastDay > 26 && _startTimeLastDay > 26) {
return dateFormat(dateTime);
}
if (feeFlag != "2006012") {
dateTime = dateTime.setDate(dateTime.getDate() - 1);
}
dateTime = dateFormat(dateTime)
return dateTime;
}
export function dateSub (dateTime, feeFlag) {
if (!dateTime || dateTime == '-') {
return dateTime
}
console.log("feeFlag:" + feeFlag);
dateTime = new Date(dateTime);
if (feeFlag != "2006012") {
dateTime = dateTime.setDate(dateTime.getDate() - 1);
}
dateTime = dateFormat(dateTime)
return dateTime;
}
export function dateAdd (dateTime) {
if (!dateTime || dateTime == '-') {
return dateTime
}
dateTime = new Date(dateTime);
dateTime = dateTime.setDate(dateTime.getDate() + 1);
dateTime = dateFormat(dateTime)
return dateTime;
}
export function addOneDay (date) {
// 将给定的日期转换为Date对象
let currentDate = new Date(date);
// 获取当前日期的时间戳
let timestamp = currentDate.getTime();
// 将时间戳加上一天的毫秒数(24小时 * 60分钟 * 60秒 * 1000毫秒)
timestamp += 24 * 60 * 60 * 1000;
// 根据新的时间戳创建一个新的Date对象
const newDate = new Date(timestamp);
// 返回新的日期对象
return newDate;
}
export function daysInMonth (year, month) {
if (month == 1) {
if (year % 4 == 0 && year % 100 != 0)
return 29;
else
return 28;
} else if ((month <= 6 && month % 2 == 0) || (month = 6 && month % 2 == 1))
return 31;
else
return 30;
}
export function addMonth (_date, _month) {
let y = _date.getFullYear();
let m = _date.getMonth();
let nextY = y;
let nextM = m;
//如果当前月+要加上的月>11 这里之所以用11是因为 js的月份从0开始
if ((m + _month) > 11) {
nextY = y + 1;
nextM = parseInt(m + _month) - 12;
} else {
nextM = m + _month
}
let daysInNextMonth = daysInMonth(nextY, nextM);
let day = _date.getDate();
if (day > daysInNextMonth) {
day = daysInNextMonth;
}
let _newDate = new Date(nextY, nextM, day)
return _newDate.getFullYear() + '-' + (_newDate.getMonth() + 1) + '-' + _newDate.getDate() + " " + _date.getHours() + ":" + _date.getMinutes() + ":" + _date.getSeconds();
}