Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5d18af8619 | ||
|
|
a41d2c6c2a |
@@ -168,3 +168,12 @@ test('身宫3', () => {
|
|||||||
const eightChar = lunar.getEightChar();
|
const eightChar = lunar.getEightChar();
|
||||||
expect(eightChar.getShenGong()).toBe('庚申');
|
expect(eightChar.getShenGong()).toBe('庚申');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('test11', () => {
|
||||||
|
const lunar = Lunar.fromYmdHms(1987, 12, 28, 23, 30, 0);
|
||||||
|
const eightChar = lunar.getEightChar();
|
||||||
|
expect(eightChar.getYear()).toBe('戊辰');
|
||||||
|
expect(eightChar.getMonth()).toBe('甲寅');
|
||||||
|
expect(eightChar.getDay()).toBe('庚子');
|
||||||
|
expect(eightChar.getTime()).toBe('戊子');
|
||||||
|
});
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ test('test7', () => {
|
|||||||
|
|
||||||
test('test8', () => {
|
test('test8', () => {
|
||||||
const lunar = Lunar.fromYmd(2050, 12, 1);
|
const lunar = Lunar.fromYmd(2050, 12, 1);
|
||||||
expect(lunar.getJieQiTable()['大雪'].toYmdHms()).toBe('2050-12-07 06:41:00');
|
expect(lunar.getJieQiTable()['DA_XUE'].toYmdHms()).toBe('2050-12-07 06:41:00');
|
||||||
});
|
});
|
||||||
|
|
||||||
test('test9', () => {
|
test('test9', () => {
|
||||||
|
|||||||
@@ -83,3 +83,15 @@ test('test14', () => {
|
|||||||
const lunar = solar.getLunar();
|
const lunar = solar.getLunar();
|
||||||
expect(lunar.getHou()).toBe('立夏 三候');
|
expect(lunar.getHou()).toBe('立夏 三候');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('test15', () => {
|
||||||
|
const solar = Solar.fromYmd(2022, 8, 22);
|
||||||
|
const lunar = solar.getLunar();
|
||||||
|
expect(lunar.getWuHou()).toBe('寒蝉鸣');
|
||||||
|
});
|
||||||
|
|
||||||
|
test('test16', () => {
|
||||||
|
const solar = Solar.fromYmd(2022, 8, 23);
|
||||||
|
const lunar = solar.getLunar();
|
||||||
|
expect(lunar.getWuHou()).toBe('鹰乃祭鸟');
|
||||||
|
});
|
||||||
|
|||||||
15
lunar.js
15
lunar.js
@@ -567,6 +567,9 @@
|
|||||||
}
|
}
|
||||||
var noon = Solar.fromJulianDay(m.getFirstJulianDay() + lunarDay - 1);
|
var noon = Solar.fromJulianDay(m.getFirstJulianDay() + lunarDay - 1);
|
||||||
var solar = Solar.fromYmdHms(noon.getYear(), noon.getMonth(), noon.getDay(), hour, minute, second);
|
var solar = Solar.fromYmdHms(noon.getYear(), noon.getMonth(), noon.getDay(), hour, minute, second);
|
||||||
|
if (noon.getYear() !== lunarYear) {
|
||||||
|
y = LunarYear.fromYear(noon.getYear());
|
||||||
|
}
|
||||||
return _new(lunarYear, lunarMonth, lunarDay, hour, minute, second, solar, y);
|
return _new(lunarYear, lunarMonth, lunarDay, hour, minute, second, solar, y);
|
||||||
};
|
};
|
||||||
var _new = function(year,month,day,hour,minute,second,solar,ly){
|
var _new = function(year,month,day,hour,minute,second,solar,ly){
|
||||||
@@ -1068,7 +1071,7 @@
|
|||||||
if(f){
|
if(f){
|
||||||
l.push(f);
|
l.push(f);
|
||||||
}
|
}
|
||||||
if (Math.abs(this._p.month) === 12 && this._p.day >= 29 && this._p.year != this.next(1).getYear()) {
|
if (Math.abs(this._p.month) === 12 && this._p.day >= 29 && this._p.year !== this.next(1).getYear()) {
|
||||||
l.push('除夕');
|
l.push('除夕');
|
||||||
}
|
}
|
||||||
return l;
|
return l;
|
||||||
@@ -1223,7 +1226,7 @@
|
|||||||
_getYearNineStar:function(yearInGanZhi){
|
_getYearNineStar:function(yearInGanZhi){
|
||||||
var index = LunarUtil.getJiaZiIndex(yearInGanZhi) + 1;
|
var index = LunarUtil.getJiaZiIndex(yearInGanZhi) + 1;
|
||||||
var yearOffset = 0;
|
var yearOffset = 0;
|
||||||
if (index != LunarUtil.getJiaZiIndex(this.getYearInGanZhi()) + 1) {
|
if (index !== LunarUtil.getJiaZiIndex(this.getYearInGanZhi()) + 1) {
|
||||||
yearOffset = -1;
|
yearOffset = -1;
|
||||||
}
|
}
|
||||||
var yuan = Math.floor((this._p.year + yearOffset + 2696) / 60) % 3;
|
var yuan = Math.floor((this._p.year + yearOffset + 2696) / 60) % 3;
|
||||||
@@ -1377,7 +1380,7 @@
|
|||||||
var j;
|
var j;
|
||||||
for(i=0,j=Lunar.JIE_QI.length;i<j;i++){
|
for(i=0,j=Lunar.JIE_QI.length;i<j;i++){
|
||||||
if(Lunar.JIE_QI[i]===name){
|
if(Lunar.JIE_QI[i]===name){
|
||||||
if(i%2==0){
|
if(i%2===0){
|
||||||
qi = true;
|
qi = true;
|
||||||
}else{
|
}else{
|
||||||
jie = true;
|
jie = true;
|
||||||
@@ -1679,7 +1682,11 @@
|
|||||||
var startSolar = jieQi.getSolar();
|
var startSolar = jieQi.getSolar();
|
||||||
var startCalendar = ExactDate.fromYmd(startSolar.getYear(),startSolar.getMonth(),startSolar.getDay());
|
var startCalendar = ExactDate.fromYmd(startSolar.getYear(),startSolar.getMonth(),startSolar.getDay());
|
||||||
var days = ExactDate.getDaysBetween(startCalendar, currentCalendar);
|
var days = ExactDate.getDaysBetween(startCalendar, currentCalendar);
|
||||||
return LunarUtil.WU_HOU[(offset*3+Math.floor(days/5)) % LunarUtil.WU_HOU.length];
|
var index = Math.floor(days / 5);
|
||||||
|
if (index > 2) {
|
||||||
|
index = 2;
|
||||||
|
}
|
||||||
|
return LunarUtil.WU_HOU[(offset * 3 + index) % LunarUtil.WU_HOU.length];
|
||||||
},
|
},
|
||||||
getHou:function(){
|
getHou:function(){
|
||||||
var jieQi = this.getPrevJieQi(true);
|
var jieQi = this.getPrevJieQi(true);
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "lunar-javascript",
|
"name": "lunar-javascript",
|
||||||
"version": "1.2.33",
|
"version": "1.2.35",
|
||||||
"description": "lunar is a calendar library for Solar and Chinese Lunar.",
|
"description": "lunar is a calendar library for Solar and Chinese Lunar.",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
Reference in New Issue
Block a user