@10yun/cv-mobile-ui 0.4.1 → 0.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/ui-cv/cv-badge/{uni-badge.vue → cv-badge.vue} +2 -2
- package/ui-cv/cv-calendar/calendar.js +762 -345
- package/ui-cv/cv-calendar/cv-calendar-item.vue +198 -0
- package/ui-cv/cv-calendar/cv-calendar.vue +508 -0
- package/ui-cv/cv-card/cv-card.vue +427 -0
- package/ui-cv/cv-col/cv-col.vue +2965 -0
- package/ui-cv/cv-collapse/cv-collapse.vue +146 -0
- package/ui-cv/cv-collapse-item/cv-collapse-item.vue +395 -0
- package/ui-cv/cv-combox/cv-combox.vue +250 -0
- package/ui-cv/cv-countdown/cv-countdown.vue +245 -0
- package/ui-cv/cv-data-checkbox/cv-data-checkbox.vue +841 -0
- package/ui-cv/cv-data-indexed-list/cv-data-indexed-list-item.vue +154 -0
- package/ui-cv/cv-data-indexed-list/cv-data-indexed-list.vue +376 -0
- package/ui-cv/cv-data-picker/cv-data-picker.vue +486 -0
- package/ui-cv/cv-data-pickerview/{uni-data-picker.js → cv-data-picker.js} +0 -0
- package/ui-cv/cv-data-pickerview/cv-data-pickerview.vue +304 -0
- package/ui-cv/cv-dateformat/cv-dateformat.vue +86 -0
- package/ui-cv/cv-datetime-picker/calendar.vue +752 -738
- package/ui-cv/cv-datetime-picker/cv-datetime-picker.vue +958 -0
- package/ui-cv/cv-datetime-picker/time-picker.vue +900 -892
- package/ui-cv/cv-easyinput/cv-easyinput.vue +514 -0
- package/ui-cv/cv-fab/cv-fab.vue +465 -0
- package/ui-cv/cv-fab/{uni-fab.vue.bak → cv-fab.vue.bak} +2 -2
- package/ui-cv/cv-fav/cv-fav.vue +150 -0
- package/ui-cv/cv-file-picker/cv-file-picker.vue +619 -0
- package/ui-cv/cv-form-item/cv-form-item.vue +1 -1
- package/ui-cv/cv-goods-nav/{uni-goods-nav.vue → cv-goods-nav.vue} +1 -1
- package/ui-cv/{cv-icons2/cv-icons2.vue → cv-icon2/cv-icon2.vue} +3 -3
- package/ui-cv/{cv-icons2 → cv-icon2}/icons.js +0 -0
- package/ui-cv/{cv-icons2 → cv-icon2}/uni.ttf +0 -0
- package/ui-cv/cv-indexed-list/cv-indexed-list-item.vue +154 -0
- package/ui-cv/cv-indexed-list/cv-indexed-list.vue +371 -0
- package/ui-cv/cv-input-password/cv-input-password.vue +2 -2
- package/ui-cv/{cv-link/uni-link.vue → cv-link2/cv-link2.vue} +1 -1
- package/ui-cv/cv-list/cv-list.vue +107 -0
- package/ui-cv/cv-list/cv-refresh.vue +65 -0
- package/ui-cv/cv-list-ad/cv-list-ad.vue +113 -0
- package/ui-cv/cv-list-chat/{uni-list-chat.scss → cv-list-chat.scss} +0 -0
- package/ui-cv/cv-list-chat/{uni-list-chat.vue → cv-list-chat.vue} +0 -0
- package/ui-cv/cv-list-item/cv-list-item.vue +449 -0
- package/ui-cv/cv-nav-bar/cv-nav-bar.vue +256 -0
- package/ui-cv/cv-nav-bar/{uni-status-bar.vue → cv-status-bar.vue} +0 -0
- package/ui-cv/cv-notice-bar/cv-notice-bar.vue +453 -0
- package/ui-cv/cv-number-box/cv-number-box.vue +223 -0
- package/ui-cv/cv-pagination/cv-pagination.vue +397 -0
- package/ui-cv/cv-popup/cv-popup.vue +429 -0
- package/ui-cv/cv-popup-dialog/{uni-popup-dialog.vue → cv-popup-dialog.vue} +0 -0
- package/ui-cv/cv-popup-message/cv-popup-message.vue +143 -0
- package/ui-cv/cv-popup-share/{uni-popup-share.vue → cv-popup-share.vue} +0 -0
- package/ui-cv/cv-row/{uni-row.vue → cv-row.vue} +1 -1
- package/ui-cv/cv-search-bar/cv-search-bar.vue +280 -0
- package/ui-cv/cv-section/{uni-section.vue → cv-section.vue} +0 -0
- package/ui-cv/cv-segmented-control/{uni-segmented-control.vue → cv-segmented-control.vue} +0 -0
- package/ui-cv/cv-status-bar/{uni-status-bar.vue → cv-status-bar.vue} +0 -0
- package/ui-cv/cv-steps/cv-steps.vue +293 -0
- package/ui-cv/cv-swipe-action/{uni-swipe-action.vue → cv-swipe-action.vue} +0 -0
- package/ui-cv/cv-swipe-action-item/{uni-swipe-action-item.vue → cv-swipe-action-item.vue} +0 -0
- package/ui-cv/cv-swiper-dot/cv-swiper-dot.vue +255 -0
- package/ui-cv/cv-table/cv-table.vue +460 -0
- package/ui-cv/cv-tag/cv-tag.vue +276 -0
- package/ui-cv/cv-tbody/cv-tbody.vue +28 -0
- package/ui-cv/cv-td/cv-td.vue +93 -0
- package/ui-cv/cv-test/{uni-test.vue → cv-test.vue} +0 -0
- package/ui-cv/cv-th/cv-th.vue +270 -0
- package/ui-cv/cv-thead/cv-thead.vue +114 -0
- package/ui-cv/cv-title/cv-title.vue +168 -0
- package/ui-cv/cv-tr/cv-tr.vue +166 -0
- package/ui-cv/cv-transition/cv-transition.vue +279 -0
- package/ui-cv/cv-calendar/uni-calendar-item.vue +0 -171
- package/ui-cv/cv-calendar/uni-calendar.vue +0 -504
- package/ui-cv/cv-card/uni-card.vue +0 -420
- package/ui-cv/cv-col/uni-col.vue +0 -2968
- package/ui-cv/cv-collapse/uni-collapse.vue +0 -146
- package/ui-cv/cv-collapse-item/uni-collapse-item.vue +0 -378
- package/ui-cv/cv-combox/uni-combox.vue +0 -237
- package/ui-cv/cv-countdown/uni-countdown.vue +0 -234
- package/ui-cv/cv-data-checkbox/uni-data-checkbox.vue +0 -792
- package/ui-cv/cv-data-indexed-list/uni-data-indexed-list-item.vue +0 -142
- package/ui-cv/cv-data-indexed-list/uni-data-indexed-list.vue +0 -364
- package/ui-cv/cv-data-picker/uni-data-picker.vue +0 -468
- package/ui-cv/cv-data-pickerview/uni-data-pickerview.vue +0 -298
- package/ui-cv/cv-dateformat/uni-dateformat.vue +0 -88
- package/ui-cv/cv-datetime-picker/uni-datetime-picker.vue +0 -874
- package/ui-cv/cv-easyinput/uni-easyinput.vue +0 -438
- package/ui-cv/cv-fab/uni-fab.vue +0 -443
- package/ui-cv/cv-fav/uni-fav.vue +0 -136
- package/ui-cv/cv-file-picker/uni-file-picker.vue +0 -614
- package/ui-cv/cv-indexed-list/uni-indexed-list-item.vue +0 -142
- package/ui-cv/cv-indexed-list/uni-indexed-list.vue +0 -357
- package/ui-cv/cv-list/uni-list.vue +0 -107
- package/ui-cv/cv-list/uni-refresh.vue +0 -65
- package/ui-cv/cv-list-ad/uni-list-ad.vue +0 -106
- package/ui-cv/cv-list-item/uni-list-item.vue +0 -428
- package/ui-cv/cv-nav-bar/uni-nav-bar.vue +0 -244
- package/ui-cv/cv-notice-bar/uni-notice-bar.vue +0 -394
- package/ui-cv/cv-number-box/uni-number-box.vue +0 -224
- package/ui-cv/cv-pagination/uni-pagination.vue +0 -376
- package/ui-cv/cv-popup/uni-popup.vue +0 -412
- package/ui-cv/cv-popup-message/uni-popup-message.vue +0 -143
- package/ui-cv/cv-search-bar/uni-search-bar.vue +0 -262
- package/ui-cv/cv-steps/uni-steps.vue +0 -250
- package/ui-cv/cv-swiper-dot/uni-swiper-dot.vue +0 -205
- package/ui-cv/cv-table/uni-table.vue +0 -455
- package/ui-cv/cv-tag/uni-tag.vue +0 -283
- package/ui-cv/cv-tbody/uni-tbody.vue +0 -30
- package/ui-cv/cv-td/uni-td.vue +0 -88
- package/ui-cv/cv-th/uni-th.vue +0 -259
- package/ui-cv/cv-thead/uni-thead.vue +0 -114
- package/ui-cv/cv-title/uni-title.vue +0 -171
- package/ui-cv/cv-tr/uni-tr.vue +0 -156
- package/ui-cv/cv-transition/uni-transition.vue +0 -287
|
@@ -1,288 +1,657 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @1900-2100区间内的公历、农历互转
|
|
3
|
-
* @charset UTF-8
|
|
4
|
-
* @github https://github.com/jjonline/calendar.js
|
|
5
|
-
* @Author Jea杨(JJonline@JJonline.Cn)
|
|
6
|
-
* @Time 2014-7-21
|
|
7
|
-
* @Time 2016-8-13 Fixed 2033hex、Attribution Annals
|
|
8
|
-
* @Time 2016-9-25 Fixed lunar LeapMonth Param Bug
|
|
9
|
-
* @Time 2017-7-24 Fixed use getTerm Func Param Error.use solar year,NOT lunar year
|
|
10
|
-
* @Version 1.0.3
|
|
11
|
-
* @公历转农历:calendar.solar2lunar(1987,11,01); //[you can ignore params of prefix 0]
|
|
12
|
-
* @农历转公历:calendar.lunar2solar(1987,09,10); //[you can ignore params of prefix 0]
|
|
13
|
-
*/
|
|
2
|
+
* @1900-2100区间内的公历、农历互转
|
|
3
|
+
* @charset UTF-8
|
|
4
|
+
* @github https://github.com/jjonline/calendar.js
|
|
5
|
+
* @Author Jea杨(JJonline@JJonline.Cn)
|
|
6
|
+
* @Time 2014-7-21
|
|
7
|
+
* @Time 2016-8-13 Fixed 2033hex、Attribution Annals
|
|
8
|
+
* @Time 2016-9-25 Fixed lunar LeapMonth Param Bug
|
|
9
|
+
* @Time 2017-7-24 Fixed use getTerm Func Param Error.use solar year,NOT lunar year
|
|
10
|
+
* @Version 1.0.3
|
|
11
|
+
* @公历转农历:calendar.solar2lunar(1987,11,01); //[you can ignore params of prefix 0]
|
|
12
|
+
* @农历转公历:calendar.lunar2solar(1987,09,10); //[you can ignore params of prefix 0]
|
|
13
|
+
*/
|
|
14
14
|
/* eslint-disable */
|
|
15
15
|
var calendar = {
|
|
16
|
-
|
|
17
16
|
/**
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
lunarInfo: [
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
17
|
+
* 农历1900-2100的润大小信息表
|
|
18
|
+
* @Array Of Property
|
|
19
|
+
* @return Hex
|
|
20
|
+
*/
|
|
21
|
+
lunarInfo: [
|
|
22
|
+
0x04bd8,
|
|
23
|
+
0x04ae0,
|
|
24
|
+
0x0a570,
|
|
25
|
+
0x054d5,
|
|
26
|
+
0x0d260,
|
|
27
|
+
0x0d950,
|
|
28
|
+
0x16554,
|
|
29
|
+
0x056a0,
|
|
30
|
+
0x09ad0,
|
|
31
|
+
0x055d2, // 1900-1909
|
|
32
|
+
0x04ae0,
|
|
33
|
+
0x0a5b6,
|
|
34
|
+
0x0a4d0,
|
|
35
|
+
0x0d250,
|
|
36
|
+
0x1d255,
|
|
37
|
+
0x0b540,
|
|
38
|
+
0x0d6a0,
|
|
39
|
+
0x0ada2,
|
|
40
|
+
0x095b0,
|
|
41
|
+
0x14977, // 1910-1919
|
|
42
|
+
0x04970,
|
|
43
|
+
0x0a4b0,
|
|
44
|
+
0x0b4b5,
|
|
45
|
+
0x06a50,
|
|
46
|
+
0x06d40,
|
|
47
|
+
0x1ab54,
|
|
48
|
+
0x02b60,
|
|
49
|
+
0x09570,
|
|
50
|
+
0x052f2,
|
|
51
|
+
0x04970, // 1920-1929
|
|
52
|
+
0x06566,
|
|
53
|
+
0x0d4a0,
|
|
54
|
+
0x0ea50,
|
|
55
|
+
0x06e95,
|
|
56
|
+
0x05ad0,
|
|
57
|
+
0x02b60,
|
|
58
|
+
0x186e3,
|
|
59
|
+
0x092e0,
|
|
60
|
+
0x1c8d7,
|
|
61
|
+
0x0c950, // 1930-1939
|
|
62
|
+
0x0d4a0,
|
|
63
|
+
0x1d8a6,
|
|
64
|
+
0x0b550,
|
|
65
|
+
0x056a0,
|
|
66
|
+
0x1a5b4,
|
|
67
|
+
0x025d0,
|
|
68
|
+
0x092d0,
|
|
69
|
+
0x0d2b2,
|
|
70
|
+
0x0a950,
|
|
71
|
+
0x0b557, // 1940-1949
|
|
72
|
+
0x06ca0,
|
|
73
|
+
0x0b550,
|
|
74
|
+
0x15355,
|
|
75
|
+
0x04da0,
|
|
76
|
+
0x0a5b0,
|
|
77
|
+
0x14573,
|
|
78
|
+
0x052b0,
|
|
79
|
+
0x0a9a8,
|
|
80
|
+
0x0e950,
|
|
81
|
+
0x06aa0, // 1950-1959
|
|
82
|
+
0x0aea6,
|
|
83
|
+
0x0ab50,
|
|
84
|
+
0x04b60,
|
|
85
|
+
0x0aae4,
|
|
86
|
+
0x0a570,
|
|
87
|
+
0x05260,
|
|
88
|
+
0x0f263,
|
|
89
|
+
0x0d950,
|
|
90
|
+
0x05b57,
|
|
91
|
+
0x056a0, // 1960-1969
|
|
92
|
+
0x096d0,
|
|
93
|
+
0x04dd5,
|
|
94
|
+
0x04ad0,
|
|
95
|
+
0x0a4d0,
|
|
96
|
+
0x0d4d4,
|
|
97
|
+
0x0d250,
|
|
98
|
+
0x0d558,
|
|
99
|
+
0x0b540,
|
|
100
|
+
0x0b6a0,
|
|
101
|
+
0x195a6, // 1970-1979
|
|
102
|
+
0x095b0,
|
|
103
|
+
0x049b0,
|
|
104
|
+
0x0a974,
|
|
105
|
+
0x0a4b0,
|
|
106
|
+
0x0b27a,
|
|
107
|
+
0x06a50,
|
|
108
|
+
0x06d40,
|
|
109
|
+
0x0af46,
|
|
110
|
+
0x0ab60,
|
|
111
|
+
0x09570, // 1980-1989
|
|
112
|
+
0x04af5,
|
|
113
|
+
0x04970,
|
|
114
|
+
0x064b0,
|
|
115
|
+
0x074a3,
|
|
116
|
+
0x0ea50,
|
|
117
|
+
0x06b58,
|
|
118
|
+
0x05ac0,
|
|
119
|
+
0x0ab60,
|
|
120
|
+
0x096d5,
|
|
121
|
+
0x092e0, // 1990-1999
|
|
122
|
+
0x0c960,
|
|
123
|
+
0x0d954,
|
|
124
|
+
0x0d4a0,
|
|
125
|
+
0x0da50,
|
|
126
|
+
0x07552,
|
|
127
|
+
0x056a0,
|
|
128
|
+
0x0abb7,
|
|
129
|
+
0x025d0,
|
|
130
|
+
0x092d0,
|
|
131
|
+
0x0cab5, // 2000-2009
|
|
132
|
+
0x0a950,
|
|
133
|
+
0x0b4a0,
|
|
134
|
+
0x0baa4,
|
|
135
|
+
0x0ad50,
|
|
136
|
+
0x055d9,
|
|
137
|
+
0x04ba0,
|
|
138
|
+
0x0a5b0,
|
|
139
|
+
0x15176,
|
|
140
|
+
0x052b0,
|
|
141
|
+
0x0a930, // 2010-2019
|
|
142
|
+
0x07954,
|
|
143
|
+
0x06aa0,
|
|
144
|
+
0x0ad50,
|
|
145
|
+
0x05b52,
|
|
146
|
+
0x04b60,
|
|
147
|
+
0x0a6e6,
|
|
148
|
+
0x0a4e0,
|
|
149
|
+
0x0d260,
|
|
150
|
+
0x0ea65,
|
|
151
|
+
0x0d530, // 2020-2029
|
|
152
|
+
0x05aa0,
|
|
153
|
+
0x076a3,
|
|
154
|
+
0x096d0,
|
|
155
|
+
0x04afb,
|
|
156
|
+
0x04ad0,
|
|
157
|
+
0x0a4d0,
|
|
158
|
+
0x1d0b6,
|
|
159
|
+
0x0d250,
|
|
160
|
+
0x0d520,
|
|
161
|
+
0x0dd45, // 2030-2039
|
|
162
|
+
0x0b5a0,
|
|
163
|
+
0x056d0,
|
|
164
|
+
0x055b2,
|
|
165
|
+
0x049b0,
|
|
166
|
+
0x0a577,
|
|
167
|
+
0x0a4b0,
|
|
168
|
+
0x0aa50,
|
|
169
|
+
0x1b255,
|
|
170
|
+
0x06d20,
|
|
171
|
+
0x0ada0, // 2040-2049
|
|
37
172
|
/** Add By JJonline@JJonline.Cn**/
|
|
38
|
-
0x14b63,
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
173
|
+
0x14b63,
|
|
174
|
+
0x09370,
|
|
175
|
+
0x049f8,
|
|
176
|
+
0x04970,
|
|
177
|
+
0x064b0,
|
|
178
|
+
0x168a6,
|
|
179
|
+
0x0ea50,
|
|
180
|
+
0x06b20,
|
|
181
|
+
0x1a6c4,
|
|
182
|
+
0x0aae0, // 2050-2059
|
|
183
|
+
0x0a2e0,
|
|
184
|
+
0x0d2e3,
|
|
185
|
+
0x0c960,
|
|
186
|
+
0x0d557,
|
|
187
|
+
0x0d4a0,
|
|
188
|
+
0x0da50,
|
|
189
|
+
0x05d55,
|
|
190
|
+
0x056a0,
|
|
191
|
+
0x0a6d0,
|
|
192
|
+
0x055d4, // 2060-2069
|
|
193
|
+
0x052d0,
|
|
194
|
+
0x0a9b8,
|
|
195
|
+
0x0a950,
|
|
196
|
+
0x0b4a0,
|
|
197
|
+
0x0b6a6,
|
|
198
|
+
0x0ad50,
|
|
199
|
+
0x055a0,
|
|
200
|
+
0x0aba4,
|
|
201
|
+
0x0a5b0,
|
|
202
|
+
0x052b0, // 2070-2079
|
|
203
|
+
0x0b273,
|
|
204
|
+
0x06930,
|
|
205
|
+
0x07337,
|
|
206
|
+
0x06aa0,
|
|
207
|
+
0x0ad50,
|
|
208
|
+
0x14b55,
|
|
209
|
+
0x04b60,
|
|
210
|
+
0x0a570,
|
|
211
|
+
0x054e4,
|
|
212
|
+
0x0d160, // 2080-2089
|
|
213
|
+
0x0e968,
|
|
214
|
+
0x0d520,
|
|
215
|
+
0x0daa0,
|
|
216
|
+
0x16aa6,
|
|
217
|
+
0x056d0,
|
|
218
|
+
0x04ae0,
|
|
219
|
+
0x0a9d4,
|
|
220
|
+
0x0a2d0,
|
|
221
|
+
0x0d150,
|
|
222
|
+
0x0f252, // 2090-2099
|
|
223
|
+
0x0d520
|
|
224
|
+
], // 2100
|
|
44
225
|
|
|
45
226
|
/**
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
227
|
+
* 公历每个月份的天数普通表
|
|
228
|
+
* @Array Of Property
|
|
229
|
+
* @return Number
|
|
230
|
+
*/
|
|
50
231
|
solarMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],
|
|
51
232
|
|
|
52
233
|
/**
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
234
|
+
* 天干地支之天干速查表
|
|
235
|
+
* @Array Of Property trans["甲","乙","丙","丁","戊","己","庚","辛","壬","癸"]
|
|
236
|
+
* @return Cn string
|
|
237
|
+
*/
|
|
57
238
|
Gan: ['\u7532', '\u4e59', '\u4e19', '\u4e01', '\u620a', '\u5df1', '\u5e9a', '\u8f9b', '\u58ec', '\u7678'],
|
|
58
239
|
|
|
59
240
|
/**
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
241
|
+
* 天干地支之地支速查表
|
|
242
|
+
* @Array Of Property
|
|
243
|
+
* @trans["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"]
|
|
244
|
+
* @return Cn string
|
|
245
|
+
*/
|
|
65
246
|
Zhi: ['\u5b50', '\u4e11', '\u5bc5', '\u536f', '\u8fb0', '\u5df3', '\u5348', '\u672a', '\u7533', '\u9149', '\u620c', '\u4ea5'],
|
|
66
247
|
|
|
67
248
|
/**
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
Animals: [
|
|
249
|
+
* 天干地支之地支速查表<=>生肖
|
|
250
|
+
* @Array Of Property
|
|
251
|
+
* @trans["鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"]
|
|
252
|
+
* @return Cn string
|
|
253
|
+
*/
|
|
254
|
+
Animals: [
|
|
255
|
+
'\u9f20',
|
|
256
|
+
'\u725b',
|
|
257
|
+
'\u864e',
|
|
258
|
+
'\u5154',
|
|
259
|
+
'\u9f99',
|
|
260
|
+
'\u86c7',
|
|
261
|
+
'\u9a6c',
|
|
262
|
+
'\u7f8a',
|
|
263
|
+
'\u7334',
|
|
264
|
+
'\u9e21',
|
|
265
|
+
'\u72d7',
|
|
266
|
+
'\u732a'
|
|
267
|
+
],
|
|
74
268
|
|
|
75
269
|
/**
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
solarTerm: [
|
|
270
|
+
* 24节气速查表
|
|
271
|
+
* @Array Of Property
|
|
272
|
+
* @trans["小寒","大寒","立春","雨水","惊蛰","春分","清明","谷雨","立夏","小满","芒种","夏至","小暑","大暑","立秋","处暑","白露","秋分","寒露","霜降","立冬","小雪","大雪","冬至"]
|
|
273
|
+
* @return Cn string
|
|
274
|
+
*/
|
|
275
|
+
solarTerm: [
|
|
276
|
+
'\u5c0f\u5bd2',
|
|
277
|
+
'\u5927\u5bd2',
|
|
278
|
+
'\u7acb\u6625',
|
|
279
|
+
'\u96e8\u6c34',
|
|
280
|
+
'\u60ca\u86f0',
|
|
281
|
+
'\u6625\u5206',
|
|
282
|
+
'\u6e05\u660e',
|
|
283
|
+
'\u8c37\u96e8',
|
|
284
|
+
'\u7acb\u590f',
|
|
285
|
+
'\u5c0f\u6ee1',
|
|
286
|
+
'\u8292\u79cd',
|
|
287
|
+
'\u590f\u81f3',
|
|
288
|
+
'\u5c0f\u6691',
|
|
289
|
+
'\u5927\u6691',
|
|
290
|
+
'\u7acb\u79cb',
|
|
291
|
+
'\u5904\u6691',
|
|
292
|
+
'\u767d\u9732',
|
|
293
|
+
'\u79cb\u5206',
|
|
294
|
+
'\u5bd2\u9732',
|
|
295
|
+
'\u971c\u964d',
|
|
296
|
+
'\u7acb\u51ac',
|
|
297
|
+
'\u5c0f\u96ea',
|
|
298
|
+
'\u5927\u96ea',
|
|
299
|
+
'\u51ac\u81f3'
|
|
300
|
+
],
|
|
82
301
|
|
|
83
302
|
/**
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
sTermInfo: [
|
|
89
|
-
'
|
|
90
|
-
'
|
|
91
|
-
'
|
|
92
|
-
'
|
|
93
|
-
'
|
|
94
|
-
'
|
|
95
|
-
'
|
|
96
|
-
'
|
|
97
|
-
'
|
|
98
|
-
'97b6b97bd19801ec9210c965cc920e',
|
|
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
|
-
'
|
|
303
|
+
* 1900-2100各年的24节气日期速查表
|
|
304
|
+
* @Array Of Property
|
|
305
|
+
* @return 0x string For splice
|
|
306
|
+
*/
|
|
307
|
+
sTermInfo: [
|
|
308
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
309
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
310
|
+
'97bcf97c3598082c95f8c965cc920f',
|
|
311
|
+
'97bd0b06bdb0722c965ce1cfcc920f',
|
|
312
|
+
'b027097bd097c36b0b6fc9274c91aa',
|
|
313
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
314
|
+
'97bcf97c359801ec95f8c965cc920f',
|
|
315
|
+
'97bd0b06bdb0722c965ce1cfcc920f',
|
|
316
|
+
'b027097bd097c36b0b6fc9274c91aa',
|
|
317
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
318
|
+
'97bcf97c359801ec95f8c965cc920f',
|
|
319
|
+
'97bd0b06bdb0722c965ce1cfcc920f',
|
|
320
|
+
'b027097bd097c36b0b6fc9274c91aa',
|
|
321
|
+
'9778397bd19801ec9210c965cc920e',
|
|
322
|
+
'97b6b97bd19801ec95f8c965cc920f',
|
|
323
|
+
'97bd09801d98082c95f8e1cfcc920f',
|
|
324
|
+
'97bd097bd097c36b0b6fc9210c8dc2',
|
|
325
|
+
'9778397bd197c36c9210c9274c91aa',
|
|
326
|
+
'97b6b97bd19801ec95f8c965cc920e',
|
|
327
|
+
'97bd09801d98082c95f8e1cfcc920f',
|
|
328
|
+
'97bd097bd097c36b0b6fc9210c8dc2',
|
|
329
|
+
'9778397bd097c36c9210c9274c91aa',
|
|
330
|
+
'97b6b97bd19801ec95f8c965cc920e',
|
|
331
|
+
'97bcf97c3598082c95f8e1cfcc920f',
|
|
332
|
+
'97bd097bd097c36b0b6fc9210c8dc2',
|
|
333
|
+
'9778397bd097c36c9210c9274c91aa',
|
|
334
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
335
|
+
'97bcf97c3598082c95f8c965cc920f',
|
|
336
|
+
'97bd097bd097c35b0b6fc920fb0722',
|
|
337
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
338
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
339
|
+
'97bcf97c3598082c95f8c965cc920f',
|
|
340
|
+
'97bd097bd097c35b0b6fc920fb0722',
|
|
341
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
342
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
343
|
+
'97bcf97c359801ec95f8c965cc920f',
|
|
344
|
+
'97bd097bd097c35b0b6fc920fb0722',
|
|
345
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
346
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
347
|
+
'97bcf97c359801ec95f8c965cc920f',
|
|
348
|
+
'97bd097bd097c35b0b6fc920fb0722',
|
|
349
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
350
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
351
|
+
'97bcf97c359801ec95f8c965cc920f',
|
|
352
|
+
'97bd097bd07f595b0b6fc920fb0722',
|
|
353
|
+
'9778397bd097c36b0b6fc9210c8dc2',
|
|
354
|
+
'9778397bd19801ec9210c9274c920e',
|
|
355
|
+
'97b6b97bd19801ec95f8c965cc920f',
|
|
356
|
+
'97bd07f5307f595b0b0bc920fb0722',
|
|
357
|
+
'7f0e397bd097c36b0b6fc9210c8dc2',
|
|
358
|
+
'9778397bd097c36c9210c9274c920e',
|
|
359
|
+
'97b6b97bd19801ec95f8c965cc920f',
|
|
360
|
+
'97bd07f5307f595b0b0bc920fb0722',
|
|
361
|
+
'7f0e397bd097c36b0b6fc9210c8dc2',
|
|
362
|
+
'9778397bd097c36c9210c9274c91aa',
|
|
363
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
364
|
+
'97bd07f1487f595b0b0bc920fb0722',
|
|
365
|
+
'7f0e397bd097c36b0b6fc9210c8dc2',
|
|
366
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
367
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
368
|
+
'97bcf7f1487f595b0b0bb0b6fb0722',
|
|
369
|
+
'7f0e397bd097c35b0b6fc920fb0722',
|
|
370
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
371
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
372
|
+
'97bcf7f1487f595b0b0bb0b6fb0722',
|
|
373
|
+
'7f0e397bd097c35b0b6fc920fb0722',
|
|
374
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
375
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
376
|
+
'97bcf7f1487f531b0b0bb0b6fb0722',
|
|
377
|
+
'7f0e397bd097c35b0b6fc920fb0722',
|
|
378
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
379
|
+
'97b6b97bd19801ec9210c965cc920e',
|
|
380
|
+
'97bcf7f1487f531b0b0bb0b6fb0722',
|
|
381
|
+
'7f0e397bd07f595b0b6fc920fb0722',
|
|
382
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
383
|
+
'97b6b97bd19801ec9210c9274c920e',
|
|
384
|
+
'97bcf7f0e47f531b0b0bb0b6fb0722',
|
|
385
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
386
|
+
'9778397bd097c36b0b6fc9210c91aa',
|
|
387
|
+
'97b6b97bd197c36c9210c9274c920e',
|
|
388
|
+
'97bcf7f0e47f531b0b0bb0b6fb0722',
|
|
389
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
390
|
+
'9778397bd097c36b0b6fc9210c8dc2',
|
|
391
|
+
'9778397bd097c36c9210c9274c920e',
|
|
392
|
+
'97b6b7f0e47f531b0723b0b6fb0722',
|
|
393
|
+
'7f0e37f5307f595b0b0bc920fb0722',
|
|
394
|
+
'7f0e397bd097c36b0b6fc9210c8dc2',
|
|
395
|
+
'9778397bd097c36b0b70c9274c91aa',
|
|
396
|
+
'97b6b7f0e47f531b0723b0b6fb0721',
|
|
397
|
+
'7f0e37f1487f595b0b0bb0b6fb0722',
|
|
398
|
+
'7f0e397bd097c35b0b6fc9210c8dc2',
|
|
399
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
400
|
+
'97b6b7f0e47f531b0723b0b6fb0721',
|
|
401
|
+
'7f0e27f1487f595b0b0bb0b6fb0722',
|
|
402
|
+
'7f0e397bd097c35b0b6fc920fb0722',
|
|
403
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
404
|
+
'97b6b7f0e47f531b0723b0b6fb0721',
|
|
405
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
406
|
+
'7f0e397bd097c35b0b6fc920fb0722',
|
|
407
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
408
|
+
'97b6b7f0e47f531b0723b0b6fb0721',
|
|
409
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
410
|
+
'7f0e397bd097c35b0b6fc920fb0722',
|
|
411
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
412
|
+
'97b6b7f0e47f531b0723b0b6fb0721',
|
|
413
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
414
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
415
|
+
'9778397bd097c36b0b6fc9274c91aa',
|
|
416
|
+
'97b6b7f0e47f531b0723b0787b0721',
|
|
417
|
+
'7f0e27f0e47f531b0b0bb0b6fb0722',
|
|
418
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
419
|
+
'9778397bd097c36b0b6fc9210c91aa',
|
|
420
|
+
'97b6b7f0e47f149b0723b0787b0721',
|
|
421
|
+
'7f0e27f0e47f531b0723b0b6fb0722',
|
|
422
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
423
|
+
'9778397bd097c36b0b6fc9210c8dc2',
|
|
424
|
+
'977837f0e37f149b0723b0787b0721',
|
|
425
|
+
'7f07e7f0e47f531b0723b0b6fb0722',
|
|
426
|
+
'7f0e37f5307f595b0b0bc920fb0722',
|
|
427
|
+
'7f0e397bd097c35b0b6fc9210c8dc2',
|
|
428
|
+
'977837f0e37f14998082b0787b0721',
|
|
429
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
430
|
+
'7f0e37f1487f595b0b0bb0b6fb0722',
|
|
431
|
+
'7f0e397bd097c35b0b6fc9210c8dc2',
|
|
432
|
+
'977837f0e37f14998082b0787b06bd',
|
|
433
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
434
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
435
|
+
'7f0e397bd097c35b0b6fc920fb0722',
|
|
436
|
+
'977837f0e37f14998082b0787b06bd',
|
|
437
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
438
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
439
|
+
'7f0e397bd097c35b0b6fc920fb0722',
|
|
440
|
+
'977837f0e37f14998082b0787b06bd',
|
|
441
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
442
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
443
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
444
|
+
'977837f0e37f14998082b0787b06bd',
|
|
445
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
446
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
447
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
448
|
+
'977837f0e37f14998082b0787b06bd',
|
|
449
|
+
'7f07e7f0e47f149b0723b0787b0721',
|
|
450
|
+
'7f0e27f0e47f531b0b0bb0b6fb0722',
|
|
451
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
452
|
+
'977837f0e37f14998082b0723b06bd',
|
|
453
|
+
'7f07e7f0e37f149b0723b0787b0721',
|
|
454
|
+
'7f0e27f0e47f531b0723b0b6fb0722',
|
|
455
|
+
'7f0e397bd07f595b0b0bc920fb0722',
|
|
456
|
+
'977837f0e37f14898082b0723b02d5',
|
|
457
|
+
'7ec967f0e37f14998082b0787b0721',
|
|
458
|
+
'7f07e7f0e47f531b0723b0b6fb0722',
|
|
459
|
+
'7f0e37f1487f595b0b0bb0b6fb0722',
|
|
460
|
+
'7f0e37f0e37f14898082b0723b02d5',
|
|
461
|
+
'7ec967f0e37f14998082b0787b0721',
|
|
462
|
+
'7f07e7f0e47f531b0723b0b6fb0722',
|
|
463
|
+
'7f0e37f1487f531b0b0bb0b6fb0722',
|
|
464
|
+
'7f0e37f0e37f14898082b0723b02d5',
|
|
465
|
+
'7ec967f0e37f14998082b0787b06bd',
|
|
466
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
467
|
+
'7f0e37f1487f531b0b0bb0b6fb0722',
|
|
468
|
+
'7f0e37f0e37f14898082b072297c35',
|
|
469
|
+
'7ec967f0e37f14998082b0787b06bd',
|
|
470
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
471
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
472
|
+
'7f0e37f0e37f14898082b072297c35',
|
|
473
|
+
'7ec967f0e37f14998082b0787b06bd',
|
|
474
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
475
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
476
|
+
'7f0e37f0e366aa89801eb072297c35',
|
|
477
|
+
'7ec967f0e37f14998082b0787b06bd',
|
|
478
|
+
'7f07e7f0e47f149b0723b0787b0721',
|
|
479
|
+
'7f0e27f1487f531b0b0bb0b6fb0722',
|
|
480
|
+
'7f0e37f0e366aa89801eb072297c35',
|
|
481
|
+
'7ec967f0e37f14998082b0723b06bd',
|
|
482
|
+
'7f07e7f0e47f149b0723b0787b0721',
|
|
483
|
+
'7f0e27f0e47f531b0723b0b6fb0722',
|
|
484
|
+
'7f0e37f0e366aa89801eb072297c35',
|
|
485
|
+
'7ec967f0e37f14998082b0723b06bd',
|
|
486
|
+
'7f07e7f0e37f14998083b0787b0721',
|
|
487
|
+
'7f0e27f0e47f531b0723b0b6fb0722',
|
|
488
|
+
'7f0e37f0e366aa89801eb072297c35',
|
|
489
|
+
'7ec967f0e37f14898082b0723b02d5',
|
|
490
|
+
'7f07e7f0e37f14998082b0787b0721',
|
|
491
|
+
'7f07e7f0e47f531b0723b0b6fb0722',
|
|
492
|
+
'7f0e36665b66aa89801e9808297c35',
|
|
493
|
+
'665f67f0e37f14898082b0723b02d5',
|
|
494
|
+
'7ec967f0e37f14998082b0787b0721',
|
|
495
|
+
'7f07e7f0e47f531b0723b0b6fb0722',
|
|
496
|
+
'7f0e36665b66a449801e9808297c35',
|
|
497
|
+
'665f67f0e37f14898082b0723b02d5',
|
|
498
|
+
'7ec967f0e37f14998082b0787b06bd',
|
|
499
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
500
|
+
'7f0e36665b66a449801e9808297c35',
|
|
501
|
+
'665f67f0e37f14898082b072297c35',
|
|
502
|
+
'7ec967f0e37f14998082b0787b06bd',
|
|
503
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
504
|
+
'7f0e26665b66a449801e9808297c35',
|
|
505
|
+
'665f67f0e37f1489801eb072297c35',
|
|
506
|
+
'7ec967f0e37f14998082b0787b06bd',
|
|
507
|
+
'7f07e7f0e47f531b0723b0b6fb0721',
|
|
508
|
+
'7f0e27f1487f531b0b0bb0b6fb0722'
|
|
509
|
+
],
|
|
155
510
|
|
|
156
511
|
/**
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
512
|
+
* 数字转中文速查表
|
|
513
|
+
* @Array Of Property
|
|
514
|
+
* @trans ['日','一','二','三','四','五','六','七','八','九','十']
|
|
515
|
+
* @return Cn string
|
|
516
|
+
*/
|
|
162
517
|
nStr1: ['\u65e5', '\u4e00', '\u4e8c', '\u4e09', '\u56db', '\u4e94', '\u516d', '\u4e03', '\u516b', '\u4e5d', '\u5341'],
|
|
163
518
|
|
|
164
519
|
/**
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
520
|
+
* 日期转农历称呼速查表
|
|
521
|
+
* @Array Of Property
|
|
522
|
+
* @trans ['初','十','廿','卅']
|
|
523
|
+
* @return Cn string
|
|
524
|
+
*/
|
|
170
525
|
nStr2: ['\u521d', '\u5341', '\u5eff', '\u5345'],
|
|
171
526
|
|
|
172
527
|
/**
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
528
|
+
* 月份转农历称呼速查表
|
|
529
|
+
* @Array Of Property
|
|
530
|
+
* @trans ['正','一','二','三','四','五','六','七','八','九','十','冬','腊']
|
|
531
|
+
* @return Cn string
|
|
532
|
+
*/
|
|
178
533
|
nStr3: ['\u6b63', '\u4e8c', '\u4e09', '\u56db', '\u4e94', '\u516d', '\u4e03', '\u516b', '\u4e5d', '\u5341', '\u51ac', '\u814a'],
|
|
179
534
|
|
|
180
535
|
/**
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
536
|
+
* 返回农历y年一整年的总天数
|
|
537
|
+
* @param lunar Year
|
|
538
|
+
* @return Number
|
|
539
|
+
* @eg:var count = calendar.lYearDays(1987) ;//count=387
|
|
540
|
+
*/
|
|
186
541
|
lYearDays: function (y) {
|
|
187
|
-
var i;
|
|
188
|
-
|
|
189
|
-
|
|
542
|
+
var i;
|
|
543
|
+
var sum = 348;
|
|
544
|
+
for (i = 0x8000; i > 0x8; i >>= 1) {
|
|
545
|
+
sum += this.lunarInfo[y - 1900] & i ? 1 : 0;
|
|
546
|
+
}
|
|
547
|
+
return sum + this.leapDays(y);
|
|
190
548
|
},
|
|
191
549
|
|
|
192
550
|
/**
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
leapMonth: function (y) {
|
|
199
|
-
|
|
551
|
+
* 返回农历y年闰月是哪个月;若y年没有闰月 则返回0
|
|
552
|
+
* @param lunar Year
|
|
553
|
+
* @return Number (0-12)
|
|
554
|
+
* @eg:var leapMonth = calendar.leapMonth(1987) ;//leapMonth=6
|
|
555
|
+
*/
|
|
556
|
+
leapMonth: function (y) {
|
|
557
|
+
// 闰字编码 \u95f0
|
|
558
|
+
return this.lunarInfo[y - 1900] & 0xf;
|
|
200
559
|
},
|
|
201
560
|
|
|
202
561
|
/**
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
562
|
+
* 返回农历y年闰月的天数 若该年没有闰月则返回0
|
|
563
|
+
* @param lunar Year
|
|
564
|
+
* @return Number (0、29、30)
|
|
565
|
+
* @eg:var leapMonthDay = calendar.leapDays(1987) ;//leapMonthDay=29
|
|
566
|
+
*/
|
|
208
567
|
leapDays: function (y) {
|
|
209
568
|
if (this.leapMonth(y)) {
|
|
210
|
-
return
|
|
569
|
+
return this.lunarInfo[y - 1900] & 0x10000 ? 30 : 29;
|
|
211
570
|
}
|
|
212
|
-
return
|
|
571
|
+
return 0;
|
|
213
572
|
},
|
|
214
573
|
|
|
215
574
|
/**
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
575
|
+
* 返回农历y年m月(非闰月)的总天数,计算m为闰月时的天数请使用leapDays方法
|
|
576
|
+
* @param lunar Year
|
|
577
|
+
* @return Number (-1、29、30)
|
|
578
|
+
* @eg:var MonthDay = calendar.monthDays(1987,9) ;//MonthDay=29
|
|
579
|
+
*/
|
|
221
580
|
monthDays: function (y, m) {
|
|
222
|
-
if (m > 12 || m < 1) {
|
|
223
|
-
|
|
581
|
+
if (m > 12 || m < 1) {
|
|
582
|
+
return -1;
|
|
583
|
+
} // 月份参数从1至12,参数错误返回-1
|
|
584
|
+
return this.lunarInfo[y - 1900] & (0x10000 >> m) ? 30 : 29;
|
|
224
585
|
},
|
|
225
586
|
|
|
226
587
|
/**
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
588
|
+
* 返回公历(!)y年m月的天数
|
|
589
|
+
* @param solar Year
|
|
590
|
+
* @return Number (-1、28、29、30、31)
|
|
591
|
+
* @eg:var solarMonthDay = calendar.leapDays(1987) ;//solarMonthDay=30
|
|
592
|
+
*/
|
|
232
593
|
solarDays: function (y, m) {
|
|
233
|
-
if (m > 12 || m < 1) {
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
594
|
+
if (m > 12 || m < 1) {
|
|
595
|
+
return -1;
|
|
596
|
+
} // 若参数错误 返回-1
|
|
597
|
+
var ms = m - 1;
|
|
598
|
+
if (ms == 1) {
|
|
599
|
+
// 2月份的闰平规律测算后确认返回28或29
|
|
600
|
+
return (y % 4 == 0 && y % 100 != 0) || y % 400 == 0 ? 29 : 28;
|
|
237
601
|
} else {
|
|
238
|
-
return
|
|
602
|
+
return this.solarMonth[ms];
|
|
239
603
|
}
|
|
240
604
|
},
|
|
241
605
|
|
|
242
606
|
/**
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
607
|
+
* 农历年份转换为干支纪年
|
|
608
|
+
* @param lYear 农历年的年份数
|
|
609
|
+
* @return Cn string
|
|
610
|
+
*/
|
|
247
611
|
toGanZhiYear: function (lYear) {
|
|
248
|
-
var ganKey = (lYear - 3) % 10
|
|
249
|
-
var zhiKey = (lYear - 3) % 12
|
|
250
|
-
if (ganKey == 0) ganKey = 10// 如果余数为0则为最后一个天干
|
|
251
|
-
if (zhiKey == 0) zhiKey = 12// 如果余数为0则为最后一个地支
|
|
252
|
-
return this.Gan[ganKey - 1] + this.Zhi[zhiKey - 1]
|
|
612
|
+
var ganKey = (lYear - 3) % 10;
|
|
613
|
+
var zhiKey = (lYear - 3) % 12;
|
|
614
|
+
if (ganKey == 0) ganKey = 10; // 如果余数为0则为最后一个天干
|
|
615
|
+
if (zhiKey == 0) zhiKey = 12; // 如果余数为0则为最后一个地支
|
|
616
|
+
return this.Gan[ganKey - 1] + this.Zhi[zhiKey - 1];
|
|
253
617
|
},
|
|
254
618
|
|
|
255
619
|
/**
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
620
|
+
* 公历月、日判断所属星座
|
|
621
|
+
* @param cMonth [description]
|
|
622
|
+
* @param cDay [description]
|
|
623
|
+
* @return Cn string
|
|
624
|
+
*/
|
|
261
625
|
toAstro: function (cMonth, cDay) {
|
|
262
|
-
var s =
|
|
263
|
-
|
|
264
|
-
|
|
626
|
+
var s =
|
|
627
|
+
'\u9b54\u7faf\u6c34\u74f6\u53cc\u9c7c\u767d\u7f8a\u91d1\u725b\u53cc\u5b50\u5de8\u87f9\u72ee\u5b50\u5904\u5973\u5929\u79e4\u5929\u874e\u5c04\u624b\u9b54\u7faf';
|
|
628
|
+
var arr = [20, 19, 21, 21, 21, 22, 23, 23, 23, 23, 22, 22];
|
|
629
|
+
return s.substr(cMonth * 2 - (cDay < arr[cMonth - 1] ? 2 : 0), 2) + '\u5ea7'; // 座
|
|
265
630
|
},
|
|
266
631
|
|
|
267
632
|
/**
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
633
|
+
* 传入offset偏移量返回干支
|
|
634
|
+
* @param offset 相对甲子的偏移量
|
|
635
|
+
* @return Cn string
|
|
636
|
+
*/
|
|
272
637
|
toGanZhi: function (offset) {
|
|
273
|
-
return this.Gan[offset % 10] + this.Zhi[offset % 12]
|
|
638
|
+
return this.Gan[offset % 10] + this.Zhi[offset % 12];
|
|
274
639
|
},
|
|
275
640
|
|
|
276
641
|
/**
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
642
|
+
* 传入公历(!)y年获得该年第n个节气的公历日期
|
|
643
|
+
* @param y公历年(1900-2100);n二十四节气中的第几个节气(1~24);从n=1(小寒)算起
|
|
644
|
+
* @return day Number
|
|
645
|
+
* @eg:var _24 = calendar.getTerm(1987,3) ;//_24=4;意即1987年2月4日立春
|
|
646
|
+
*/
|
|
282
647
|
getTerm: function (y, n) {
|
|
283
|
-
if (y < 1900 || y > 2100) {
|
|
284
|
-
|
|
285
|
-
|
|
648
|
+
if (y < 1900 || y > 2100) {
|
|
649
|
+
return -1;
|
|
650
|
+
}
|
|
651
|
+
if (n < 1 || n > 24) {
|
|
652
|
+
return -1;
|
|
653
|
+
}
|
|
654
|
+
var _table = this.sTermInfo[y - 1900];
|
|
286
655
|
var _info = [
|
|
287
656
|
parseInt('0x' + _table.substr(0, 5)).toString(),
|
|
288
657
|
parseInt('0x' + _table.substr(5, 5)).toString(),
|
|
@@ -290,7 +659,7 @@ var calendar = {
|
|
|
290
659
|
parseInt('0x' + _table.substr(15, 5)).toString(),
|
|
291
660
|
parseInt('0x' + _table.substr(20, 5)).toString(),
|
|
292
661
|
parseInt('0x' + _table.substr(25, 5)).toString()
|
|
293
|
-
]
|
|
662
|
+
];
|
|
294
663
|
var _calday = [
|
|
295
664
|
_info[0].substr(0, 1),
|
|
296
665
|
_info[0].substr(1, 2),
|
|
@@ -321,226 +690,274 @@ var calendar = {
|
|
|
321
690
|
_info[5].substr(1, 2),
|
|
322
691
|
_info[5].substr(3, 1),
|
|
323
692
|
_info[5].substr(4, 2)
|
|
324
|
-
]
|
|
325
|
-
return parseInt(_calday[n - 1])
|
|
693
|
+
];
|
|
694
|
+
return parseInt(_calday[n - 1]);
|
|
326
695
|
},
|
|
327
696
|
|
|
328
697
|
/**
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
toChinaMonth: function (m) {
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
698
|
+
* 传入农历数字月份返回汉语通俗表示法
|
|
699
|
+
* @param lunar month
|
|
700
|
+
* @return Cn string
|
|
701
|
+
* @eg:var cnMonth = calendar.toChinaMonth(12) ;//cnMonth='腊月'
|
|
702
|
+
*/
|
|
703
|
+
toChinaMonth: function (m) {
|
|
704
|
+
// 月 => \u6708
|
|
705
|
+
if (m > 12 || m < 1) {
|
|
706
|
+
return -1;
|
|
707
|
+
} // 若参数错误 返回-1
|
|
708
|
+
var s = this.nStr3[m - 1];
|
|
709
|
+
s += '\u6708'; // 加上月字
|
|
710
|
+
return s;
|
|
339
711
|
},
|
|
340
712
|
|
|
341
713
|
/**
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
toChinaDay: function (d) {
|
|
348
|
-
|
|
714
|
+
* 传入农历日期数字返回汉字表示法
|
|
715
|
+
* @param lunar day
|
|
716
|
+
* @return Cn string
|
|
717
|
+
* @eg:var cnDay = calendar.toChinaDay(21) ;//cnMonth='廿一'
|
|
718
|
+
*/
|
|
719
|
+
toChinaDay: function (d) {
|
|
720
|
+
// 日 => \u65e5
|
|
721
|
+
var s;
|
|
349
722
|
switch (d) {
|
|
350
723
|
case 10:
|
|
351
|
-
s = '\u521d\u5341';
|
|
724
|
+
s = '\u521d\u5341';
|
|
725
|
+
break;
|
|
352
726
|
case 20:
|
|
353
|
-
s = '\u4e8c\u5341';
|
|
354
|
-
break
|
|
727
|
+
s = '\u4e8c\u5341';
|
|
728
|
+
break;
|
|
729
|
+
break;
|
|
355
730
|
case 30:
|
|
356
|
-
s = '\u4e09\u5341';
|
|
357
|
-
break
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
s
|
|
731
|
+
s = '\u4e09\u5341';
|
|
732
|
+
break;
|
|
733
|
+
break;
|
|
734
|
+
default:
|
|
735
|
+
s = this.nStr2[Math.floor(d / 10)];
|
|
736
|
+
s += this.nStr1[d % 10];
|
|
361
737
|
}
|
|
362
|
-
return
|
|
738
|
+
return s;
|
|
363
739
|
},
|
|
364
740
|
|
|
365
741
|
/**
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
742
|
+
* 年份转生肖[!仅能大致转换] => 精确划分生肖分界线是“立春”
|
|
743
|
+
* @param y year
|
|
744
|
+
* @return Cn string
|
|
745
|
+
* @eg:var animal = calendar.getAnimal(1987) ;//animal='兔'
|
|
746
|
+
*/
|
|
371
747
|
getAnimal: function (y) {
|
|
372
|
-
return this.Animals[(y - 4) % 12]
|
|
748
|
+
return this.Animals[(y - 4) % 12];
|
|
373
749
|
},
|
|
374
750
|
|
|
375
751
|
/**
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
solar2lunar: function (y, m, d) {
|
|
752
|
+
* 传入阳历年月日获得详细的公历、农历object信息 <=>JSON
|
|
753
|
+
* @param y solar year
|
|
754
|
+
* @param m solar month
|
|
755
|
+
* @param d solar day
|
|
756
|
+
* @return JSON object
|
|
757
|
+
* @eg:console.log(calendar.solar2lunar(1987,11,01));
|
|
758
|
+
*/
|
|
759
|
+
solar2lunar: function (y, m, d) {
|
|
760
|
+
// 参数区间1900.1.31~2100.12.31
|
|
384
761
|
// 年份限定、上限
|
|
385
762
|
if (y < 1900 || y > 2100) {
|
|
386
|
-
return -1// undefined转换为数字变为NaN
|
|
763
|
+
return -1; // undefined转换为数字变为NaN
|
|
387
764
|
}
|
|
388
765
|
// 公历传参最下限
|
|
389
766
|
if (y == 1900 && m == 1 && d < 31) {
|
|
390
|
-
return -1
|
|
767
|
+
return -1;
|
|
391
768
|
}
|
|
392
769
|
// 未传参 获得当天
|
|
393
770
|
if (!y) {
|
|
394
|
-
var objDate = new Date()
|
|
771
|
+
var objDate = new Date();
|
|
395
772
|
} else {
|
|
396
|
-
var objDate = new Date(y, parseInt(m) - 1, d)
|
|
773
|
+
var objDate = new Date(y, parseInt(m) - 1, d);
|
|
397
774
|
}
|
|
398
|
-
var i;
|
|
775
|
+
var i;
|
|
776
|
+
var leap = 0;
|
|
777
|
+
var temp = 0;
|
|
399
778
|
// 修正ymd参数
|
|
400
|
-
var y = objDate.getFullYear()
|
|
401
|
-
var m = objDate.getMonth() + 1
|
|
402
|
-
var d = objDate.getDate()
|
|
403
|
-
var offset = (Date.UTC(objDate.getFullYear(), objDate.getMonth(), objDate.getDate()) - Date.UTC(1900, 0, 31)) / 86400000
|
|
779
|
+
var y = objDate.getFullYear();
|
|
780
|
+
var m = objDate.getMonth() + 1;
|
|
781
|
+
var d = objDate.getDate();
|
|
782
|
+
var offset = (Date.UTC(objDate.getFullYear(), objDate.getMonth(), objDate.getDate()) - Date.UTC(1900, 0, 31)) / 86400000;
|
|
404
783
|
for (i = 1900; i < 2101 && offset > 0; i++) {
|
|
405
|
-
temp = this.lYearDays(i)
|
|
406
|
-
offset -= temp
|
|
784
|
+
temp = this.lYearDays(i);
|
|
785
|
+
offset -= temp;
|
|
407
786
|
}
|
|
408
787
|
if (offset < 0) {
|
|
409
|
-
offset += temp;
|
|
788
|
+
offset += temp;
|
|
789
|
+
i--;
|
|
410
790
|
}
|
|
411
791
|
|
|
412
792
|
// 是否今天
|
|
413
|
-
var isTodayObj = new Date()
|
|
414
|
-
var isToday = false
|
|
793
|
+
var isTodayObj = new Date();
|
|
794
|
+
var isToday = false;
|
|
415
795
|
if (isTodayObj.getFullYear() == y && isTodayObj.getMonth() + 1 == m && isTodayObj.getDate() == d) {
|
|
416
|
-
isToday = true
|
|
796
|
+
isToday = true;
|
|
417
797
|
}
|
|
418
798
|
// 星期几
|
|
419
|
-
var nWeek = objDate.getDay()
|
|
420
|
-
var cWeek = this.nStr1[nWeek]
|
|
799
|
+
var nWeek = objDate.getDay();
|
|
800
|
+
var cWeek = this.nStr1[nWeek];
|
|
421
801
|
// 数字表示周几顺应天朝周一开始的惯例
|
|
422
802
|
if (nWeek == 0) {
|
|
423
|
-
nWeek = 7
|
|
803
|
+
nWeek = 7;
|
|
424
804
|
}
|
|
425
805
|
// 农历年
|
|
426
|
-
var year = i
|
|
427
|
-
var leap = this.leapMonth(i) // 闰哪个月
|
|
428
|
-
var isLeap = false
|
|
806
|
+
var year = i;
|
|
807
|
+
var leap = this.leapMonth(i); // 闰哪个月
|
|
808
|
+
var isLeap = false;
|
|
429
809
|
|
|
430
810
|
// 效验闰月
|
|
431
811
|
for (i = 1; i < 13 && offset > 0; i++) {
|
|
432
812
|
// 闰月
|
|
433
|
-
if (leap > 0 && i ==
|
|
434
|
-
--i
|
|
435
|
-
isLeap = true;
|
|
813
|
+
if (leap > 0 && i == leap + 1 && isLeap == false) {
|
|
814
|
+
--i;
|
|
815
|
+
isLeap = true;
|
|
816
|
+
temp = this.leapDays(year); // 计算农历闰月天数
|
|
436
817
|
} else {
|
|
437
|
-
temp = this.monthDays(year, i)// 计算农历普通月天数
|
|
818
|
+
temp = this.monthDays(year, i); // 计算农历普通月天数
|
|
438
819
|
}
|
|
439
820
|
// 解除闰月
|
|
440
|
-
if (isLeap == true && i ==
|
|
441
|
-
|
|
821
|
+
if (isLeap == true && i == leap + 1) {
|
|
822
|
+
isLeap = false;
|
|
823
|
+
}
|
|
824
|
+
offset -= temp;
|
|
442
825
|
}
|
|
443
826
|
// 闰月导致数组下标重叠取反
|
|
444
827
|
if (offset == 0 && leap > 0 && i == leap + 1) {
|
|
445
828
|
if (isLeap) {
|
|
446
|
-
isLeap = false
|
|
829
|
+
isLeap = false;
|
|
447
830
|
} else {
|
|
448
|
-
isLeap = true;
|
|
831
|
+
isLeap = true;
|
|
832
|
+
--i;
|
|
449
833
|
}
|
|
450
834
|
}
|
|
451
835
|
if (offset < 0) {
|
|
452
|
-
offset += temp;
|
|
836
|
+
offset += temp;
|
|
837
|
+
--i;
|
|
453
838
|
}
|
|
454
839
|
// 农历月
|
|
455
|
-
var month = i
|
|
840
|
+
var month = i;
|
|
456
841
|
// 农历日
|
|
457
|
-
var day = offset + 1
|
|
842
|
+
var day = offset + 1;
|
|
458
843
|
// 天干地支处理
|
|
459
|
-
var sm = m - 1
|
|
460
|
-
var gzY = this.toGanZhiYear(year)
|
|
844
|
+
var sm = m - 1;
|
|
845
|
+
var gzY = this.toGanZhiYear(year);
|
|
461
846
|
|
|
462
847
|
// 当月的两个节气
|
|
463
848
|
// bugfix-2017-7-24 11:03:38 use lunar Year Param `y` Not `year`
|
|
464
|
-
var firstNode = this.getTerm(y,
|
|
465
|
-
var secondNode = this.getTerm(y,
|
|
849
|
+
var firstNode = this.getTerm(y, m * 2 - 1); // 返回当月「节」为几日开始
|
|
850
|
+
var secondNode = this.getTerm(y, m * 2); // 返回当月「节」为几日开始
|
|
466
851
|
|
|
467
852
|
// 依据12节气修正干支月
|
|
468
|
-
var gzM = this.toGanZhi((y - 1900) * 12 + m + 11)
|
|
853
|
+
var gzM = this.toGanZhi((y - 1900) * 12 + m + 11);
|
|
469
854
|
if (d >= firstNode) {
|
|
470
|
-
gzM = this.toGanZhi((y - 1900) * 12 + m + 12)
|
|
855
|
+
gzM = this.toGanZhi((y - 1900) * 12 + m + 12);
|
|
471
856
|
}
|
|
472
857
|
|
|
473
858
|
// 传入的日期的节气与否
|
|
474
|
-
var isTerm = false
|
|
475
|
-
var Term = null
|
|
859
|
+
var isTerm = false;
|
|
860
|
+
var Term = null;
|
|
476
861
|
if (firstNode == d) {
|
|
477
|
-
isTerm = true
|
|
478
|
-
Term = this.solarTerm[m * 2 - 2]
|
|
862
|
+
isTerm = true;
|
|
863
|
+
Term = this.solarTerm[m * 2 - 2];
|
|
479
864
|
}
|
|
480
865
|
if (secondNode == d) {
|
|
481
|
-
isTerm = true
|
|
482
|
-
Term = this.solarTerm[m * 2 - 1]
|
|
866
|
+
isTerm = true;
|
|
867
|
+
Term = this.solarTerm[m * 2 - 1];
|
|
483
868
|
}
|
|
484
869
|
// 日柱 当月一日与 1900/1/1 相差天数
|
|
485
|
-
var dayCyclical = Date.UTC(y, sm, 1, 0, 0, 0, 0) / 86400000 + 25567 + 10
|
|
486
|
-
var gzD = this.toGanZhi(dayCyclical + d - 1)
|
|
870
|
+
var dayCyclical = Date.UTC(y, sm, 1, 0, 0, 0, 0) / 86400000 + 25567 + 10;
|
|
871
|
+
var gzD = this.toGanZhi(dayCyclical + d - 1);
|
|
487
872
|
// 该日期所属的星座
|
|
488
|
-
var astro = this.toAstro(m, d)
|
|
489
|
-
|
|
490
|
-
return {
|
|
873
|
+
var astro = this.toAstro(m, d);
|
|
874
|
+
|
|
875
|
+
return {
|
|
876
|
+
lYear: year,
|
|
877
|
+
lMonth: month,
|
|
878
|
+
lDay: day,
|
|
879
|
+
Animal: this.getAnimal(year),
|
|
880
|
+
IMonthCn: (isLeap ? '\u95f0' : '') + this.toChinaMonth(month),
|
|
881
|
+
IDayCn: this.toChinaDay(day),
|
|
882
|
+
cYear: y,
|
|
883
|
+
cMonth: m,
|
|
884
|
+
cDay: d,
|
|
885
|
+
gzYear: gzY,
|
|
886
|
+
gzMonth: gzM,
|
|
887
|
+
gzDay: gzD,
|
|
888
|
+
isToday: isToday,
|
|
889
|
+
isLeap: isLeap,
|
|
890
|
+
nWeek: nWeek,
|
|
891
|
+
ncWeek: '\u661f\u671f' + cWeek,
|
|
892
|
+
isTerm: isTerm,
|
|
893
|
+
Term: Term,
|
|
894
|
+
astro: astro
|
|
895
|
+
};
|
|
491
896
|
},
|
|
492
897
|
|
|
493
898
|
/**
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
lunar2solar: function (y, m, d, isLeapMonth) {
|
|
503
|
-
|
|
504
|
-
var
|
|
505
|
-
var
|
|
506
|
-
var
|
|
507
|
-
|
|
508
|
-
if (
|
|
509
|
-
|
|
510
|
-
|
|
899
|
+
* 传入农历年月日以及传入的月份是否闰月获得详细的公历、农历object信息 <=>JSON
|
|
900
|
+
* @param y lunar year
|
|
901
|
+
* @param m lunar month
|
|
902
|
+
* @param d lunar day
|
|
903
|
+
* @param isLeapMonth lunar month is leap or not.[如果是农历闰月第四个参数赋值true即可]
|
|
904
|
+
* @return JSON object
|
|
905
|
+
* @eg:console.log(calendar.lunar2solar(1987,9,10));
|
|
906
|
+
*/
|
|
907
|
+
lunar2solar: function (y, m, d, isLeapMonth) {
|
|
908
|
+
// 参数区间1900.1.31~2100.12.1
|
|
909
|
+
var isLeapMonth = !!isLeapMonth;
|
|
910
|
+
var leapOffset = 0;
|
|
911
|
+
var leapMonth = this.leapMonth(y);
|
|
912
|
+
var leapDay = this.leapDays(y);
|
|
913
|
+
if (isLeapMonth && leapMonth != m) {
|
|
914
|
+
return -1;
|
|
915
|
+
} // 传参要求计算该闰月公历 但该年得出的闰月与传参的月份并不同
|
|
916
|
+
if ((y == 2100 && m == 12 && d > 1) || (y == 1900 && m == 1 && d < 31)) {
|
|
917
|
+
return -1;
|
|
918
|
+
} // 超出了最大极限值
|
|
919
|
+
var day = this.monthDays(y, m);
|
|
920
|
+
var _day = day;
|
|
511
921
|
// bugFix 2016-9-25
|
|
512
922
|
// if month is leap, _day use leapDays method
|
|
513
923
|
if (isLeapMonth) {
|
|
514
|
-
_day = this.leapDays(y, m)
|
|
924
|
+
_day = this.leapDays(y, m);
|
|
515
925
|
}
|
|
516
|
-
if (y < 1900 || y > 2100 || d > _day) {
|
|
926
|
+
if (y < 1900 || y > 2100 || d > _day) {
|
|
927
|
+
return -1;
|
|
928
|
+
} // 参数合法性效验
|
|
517
929
|
|
|
518
930
|
// 计算农历的时间差
|
|
519
|
-
var offset = 0
|
|
931
|
+
var offset = 0;
|
|
520
932
|
for (var i = 1900; i < y; i++) {
|
|
521
|
-
offset += this.lYearDays(i)
|
|
933
|
+
offset += this.lYearDays(i);
|
|
522
934
|
}
|
|
523
|
-
var leap = 0;
|
|
935
|
+
var leap = 0;
|
|
936
|
+
var isAdd = false;
|
|
524
937
|
for (var i = 1; i < m; i++) {
|
|
525
|
-
leap = this.leapMonth(y)
|
|
526
|
-
if (!isAdd) {
|
|
938
|
+
leap = this.leapMonth(y);
|
|
939
|
+
if (!isAdd) {
|
|
940
|
+
// 处理闰月
|
|
527
941
|
if (leap <= i && leap > 0) {
|
|
528
|
-
offset += this.leapDays(y);
|
|
942
|
+
offset += this.leapDays(y);
|
|
943
|
+
isAdd = true;
|
|
529
944
|
}
|
|
530
945
|
}
|
|
531
|
-
offset += this.monthDays(y, i)
|
|
946
|
+
offset += this.monthDays(y, i);
|
|
532
947
|
}
|
|
533
948
|
// 转换闰月农历 需补充该年闰月的前一个月的时差
|
|
534
|
-
if (isLeapMonth) {
|
|
949
|
+
if (isLeapMonth) {
|
|
950
|
+
offset += day;
|
|
951
|
+
}
|
|
535
952
|
// 1900年农历正月一日的公历时间为1900年1月30日0时0分0秒(该时间也是本农历的最开始起始点)
|
|
536
|
-
var stmap = Date.UTC(1900, 1, 30, 0, 0, 0)
|
|
537
|
-
var calObj = new Date((offset + d - 31) * 86400000 + stmap)
|
|
538
|
-
var cY = calObj.getUTCFullYear()
|
|
539
|
-
var cM = calObj.getUTCMonth() + 1
|
|
540
|
-
var cD = calObj.getUTCDate()
|
|
953
|
+
var stmap = Date.UTC(1900, 1, 30, 0, 0, 0);
|
|
954
|
+
var calObj = new Date((offset + d - 31) * 86400000 + stmap);
|
|
955
|
+
var cY = calObj.getUTCFullYear();
|
|
956
|
+
var cM = calObj.getUTCMonth() + 1;
|
|
957
|
+
var cD = calObj.getUTCDate();
|
|
541
958
|
|
|
542
|
-
return this.solar2lunar(cY, cM, cD)
|
|
959
|
+
return this.solar2lunar(cY, cM, cD);
|
|
543
960
|
}
|
|
544
|
-
}
|
|
961
|
+
};
|
|
545
962
|
|
|
546
|
-
export default calendar
|
|
963
|
+
export default calendar;
|