第一部分:
在文章的開頭,推薦一個我最近發布的npm包:
https://www.npmjs.com/package/solarday2lunarday
這個包提供了幾種方法,可以很方便的將陽歷的日期輸入,查詢到對應的陰歷日期,並且能夠獲取陽歷年份的大部分中國節日,以及查詢陽歷年是否閏年。
還支持輸入陰歷的年月日以及是否閏月,查詢對應的陽歷時間。
安裝方法:npm install solarday2lunarday
引用方法:import calendar from 'solarday2lunarday
注意事項:該包是用Typescript寫的,已經加入了對Typescript的支持,在Typescript工程和Javascript工程中都能夠良好的運行和兼容
使用方法:
(1) 輸入陽歷日期, 獲得當天的陽歷日期、陰歷日期,以及天干、地支、納音、生肖、星座、節日、節氣等信息的對象
舉例:
canlerdar.solar2lunar(2020,5,1)
參數類型:第一種:年份(數字或字符串,1901~2099),月份(數字或字符串,1~12),日期(數字或字符串,1~31)
參數類型:第二種:年月日(字符串 : 2020-05-01 或者 2020-5-1 或 2020/05/01 或 2020/5/1)
參數類型:第三種:數字(1588691866)
輸出結果:
(2)輸入陰歷日期,獲取陽歷對應天的詳細信息
calendar.lunar2solar(2020, 5, 1, false)
參數類型:陰歷年份(數字 范圍 1901 ~ 2099),陰歷月份(數字),陰歷日期(數字),是否閏月
類型說明:因為在陰歷中會有閏月之分,因此在查詢時,需要指明是否為陰歷的閏月,如果當年沒有對應的閏月,則會返回當年沒有這個閏月的錯誤信息
輸出結果

(3)獲取一年中所有的節日
calendar.getAllFestival(2020)
參數類型:年份(數字,范圍1901 ~ 2099)
輸出結果:

(4) 查詢某年是否為閏年
calendar.isLeapYear(2020)
參數類型: 年份(數字,公元后年份)
返回值:true
(5) 查詢星座
calendar.getConstellation(5, 1)
參數類型:月份(數字 1 ~ 12),日期(數字 1 ~ 31)
返回值:金牛座