#LunarCalendar#
-农历(阴历)万年历,是一款支持Node.js和浏览器端使用的全功能农历和公历日历类库。支持农历与公历之间相互转换,含有二十四节气,天干地支纪年纪月纪日,生肖属相,公历节假日及农历传统节假日信息等功能。自带2013-2014节假日安排数据,并可自行配置。带有黄历数据,可自行选择配置。支持1891-2100年。使用**LunarCalendar**可快速开发一款属于自己的万年历产品,行动起来吧!
+此為正體中文版本
+
+請參閱[原始專案](https://github.com/zzyss86/LunarCalendar)
+
+農曆(陰曆)萬年曆,是一款支持Node.js和瀏覽器端使用的全功能農曆和公曆日曆類庫。支持農曆與公曆之間相互轉換,含有二十四節氣,天干地支紀年紀月紀日,生肖屬相,公曆節假日及農曆傳統節假日信息等功能。自帶2013-2014節假日安排數據,並可自行配置。帶有黃曆數據,可自行選擇配置。支持1891-2100年。使用**LunarCalendar**可快速開發一款屬於自己的萬年曆產品,行動起來吧!
##Install##
-1. Node.jsæ\9c\8då\8a¡å\99¨ç«¯(使ç\94¨npmå®\89è£\85):
+1. Node.jsæ\9c\8då\8b\99å\99¨ç«¯(使ç\94¨npmå®\89è£\9d):
`npm install lunar-calendar`
-2. 浏览器端使用,引用脚本:
+2. 瀏覽器端使用,引用腳本:
`<script type="text/javascript" src="lib/LunarCalendar.min.js"></script>`
###Node.js###
var LunarCalendar = require("lunar-calendar");
-###浏览器###
-`window.LunarCalendar`是一个全局对象,可以全局作用域直接调用。
+###瀏覽器###
+`window.LunarCalendar`是一個全局對象,可以全局作用域直接調用。
+
+##DEMO產品:小推萬年曆(手機版)##
+訪問方式:(手機掃瞄二維碼)
+
+![二維碼](http://cdn.tuijs.com/upload/1956115939.png)
+
+![小推萬年曆截圖](http://cdn.tuijs.com/upload/calendar_photo.png)
##方法列表##
###LunarCalendar.calendar(year,month[,fill])###
-通过公历获取某月农历数据
+通過公曆獲取某月農曆數據
-####å\8f\82æ\95°è¯´明####
-- @param {Number} `year` 公历年 范围[1891-2100]
-- @param {Number} `month` 公历月 范围[1-12]
-- @param {Boolean} `fill`ï¼\88å\8f¯é\80\89ï¼\89 æ\98¯å\90¦å¡«å\85\85å½\93æ\9c\88æ\97¥å\8e\86é¦\96å°¾æ\97¥æ\9c\9fï¼\8c设为trueæ\97¶ï¼\8cä¼\9aå\9c¨é¦\96尾填å\85¥ä¸\8aä¸\8bæ\9c\88æ\95°æ\8d®ï¼\8cè\87ªå\8a¨è¡¥å\85¨ä¸\80个7*6é\98µå\88\97æ\95°æ\8d®ã\80\82ï¼\88å\8f¯æ\9b´ç¾\8eè§\82ç\9a\84æ\89\93é\80 ä½ ç\9a\84ä¸\87å¹´å\8e\86产品)
+####å\8f\83æ\95¸èªª明####
+- @param {Number} `year` 公曆年 範圍[1891-2100]
+- @param {Number} `month` 公曆月 範圍[1-12]
+- @param {Boolean} `fill`ï¼\88å\8f¯é\81¸ï¼\89 æ\98¯å\90¦å¡«å\85\85ç\95¶æ\9c\88æ\97¥æ\9b\86é¦\96å°¾æ\97¥æ\9c\9fï¼\8cè¨ç\82ºtrueæ\99\82ï¼\8cæ\9c\83å\9c¨é¦\96尾填å\85¥ä¸\8aä¸\8bæ\9c\88æ\95¸æ\93\9aï¼\8cè\87ªå\8b\95è£\9cå\85¨ä¸\80å\80\8b7*6é\99£å\88\97æ\95¸æ\93\9aã\80\82ï¼\88å\8f¯æ\9b´ç¾\8eè§\80ç\9a\84æ\89\93é\80 ä½ ç\9a\84è\90¬å¹´æ\9b\86ç\94¢品)
-####è¿\94å\9b\9eæ\95°æ\8d®####
+####è¿\94å\9b\9eæ\95¸æ\93\9a####
{
- "firstDay": 5, //该æ\9c\881å\8f·æ\98\9fæ\9c\9få\87 ï¼\88æ\97¥å\8e\86å¼\80始位置)
- "monthDays": 28, //该æ\9c\88天æ\95°
- "monthData": [ //本月所有日历数据
+ "firstDay": 5, //該æ\9c\881è\99\9fæ\98\9fæ\9c\9få¹¾ï¼\88æ\97¥æ\9b\86é\96\8b始位置)
+ "monthDays": 28, //該æ\9c\88天æ\95¸
+ "monthData": [ //本月所有日曆數據
{
- "year": 2014, //公å\8e\86å¹´
- "month": 2, //公å\8e\86æ\9c\88
- "day": 1, //公å\8e\86æ\97¥
- "zodiac": "è\9b\87", //ç\94\9fè\82\96å±\9e相
- "GanZhiYear": "ç\99¸å·³", //å¹²æ\94¯çºª年
- "GanZhiMonth": "ä¹\99ä¸\91", //å¹²æ\94¯çºª月
- "GanZhiDay": "ç\99¸å\8d¯", //å¹²æ\94¯çºª日
- "worktime": 2, //0无特殊安排,1工作,2放假
- "lunarYear": 2014, //å\86\9cå\8e\86å¹´
- "lunarMonth": 1, //农历月(1-13,有闰月情况,比如当前闰9月,10表示闰9月,11表示10月)
- "lunarDay": 2, //å\86\9cå\8e\86æ\97¥
- "lunarMonthName": "正月", //å\86\9cå\8e\86æ\9c\88ä¸æ\96\87å\90\8d
- "lunarDayName": "初二", //å\86\9cå\8e\86æ\97¥ä¸æ\96\87å\90\8d
- "lunarLeapMonth": 9, //农历闰月所在月份,0表示无闰月
- "solarFestival": "", //公历节假日,undefined或‘劳动节’之类
- "lunarFestival": "", //农历节假日,undefined或‘除夕’之类
- "term": "" //二十四节气名,undefined或‘立春’之类
+ "year": 2014, //公æ\9b\86å¹´
+ "month": 2, //公æ\9b\86æ\9c\88
+ "day": 1, //公æ\9b\86æ\97¥
+ "zodiac": "è\9b\87", //ç\94\9fè\82\96屬相
+ "GanZhiYear": "ç\99¸å·³", //å¹²æ\94¯ç´\80年
+ "GanZhiMonth": "ä¹\99ä¸\91", //å¹²æ\94¯ç´\80月
+ "GanZhiDay": "ç\99¸å\8d¯", //å¹²æ\94¯ç´\80日
+ "worktime": 2, //0無特殊安排,1工作,2放假
+ "lunarYear": 2014, //è¾²æ\9b\86å¹´
+ "lunarMonth": 1, //農曆月(1-13,有閏月情況,比如當前閏9月,10表示閏9月,11表示10月)
+ "lunarDay": 2, //è¾²æ\9b\86æ\97¥
+ "lunarMonthName": "正月", //è¾²æ\9b\86æ\9c\88ä¸æ\96\87å\90\8d
+ "lunarDayName": "初二", //è¾²æ\9b\86æ\97¥ä¸æ\96\87å\90\8d
+ "lunarLeapMonth": 9, //農曆閏月所在月份,0表示無閏月
+ "solarFestival": "", //公曆節假日,undefined或『勞動節』之類
+ "lunarFestival": "", //農曆節假日,undefined或『除夕』之類
+ "term": "" //二十四節氣名,undefined或『立春』之類
},
...
]
}
###LunarCalendar.solarCalendar(year,month[,fill])###
-è\8e·å\8f\96å\85¬å\8e\86æ\9f\90æ\9c\88æ\97¥å\8e\86æ\95°æ\8d®ï¼\88ä¸\8d带å\86\9cå\8e\86ä¿¡æ\81¯ï¼\89
+ç\8d²å\8f\96å\85¬æ\9b\86æ\9f\90æ\9c\88æ\97¥æ\9b\86æ\95¸æ\93\9aï¼\88ä¸\8d帶農æ\9b\86ä¿¡æ\81¯ï¼\89
-####å\8f\82æ\95°è¯´明####
-- @param {Number} `year` 公历年 范围[1-~]公元后
-- @param {Number} `month` 公历月 范围[1-12]
-- @param {Boolean} `fill`ï¼\88å\8f¯é\80\89ï¼\89 æ\98¯å\90¦å¡«å\85\85å½\93æ\9c\88æ\97¥å\8e\86é¦\96å°¾æ\97¥æ\9c\9fï¼\8c设为trueæ\97¶ï¼\8cä¼\9aå\9c¨é¦\96尾填å\85¥ä¸\8aä¸\8bæ\9c\88æ\95°æ\8d®ï¼\8cè\87ªå\8a¨è¡¥å\85¨ä¸\80个7*6é\98µå\88\97æ\95°æ\8d®ã\80\82ï¼\88å\8f¯æ\9b´ç¾\8eè§\82ç\9a\84æ\89\93é\80 ä½ ç\9a\84ä¸\87å¹´å\8e\86产品)
+####å\8f\83æ\95¸èªª明####
+- @param {Number} `year` 公曆年 範圍[1-~]公元後
+- @param {Number} `month` 公曆月 範圍[1-12]
+- @param {Boolean} `fill`ï¼\88å\8f¯é\81¸ï¼\89 æ\98¯å\90¦å¡«å\85\85ç\95¶æ\9c\88æ\97¥æ\9b\86é¦\96å°¾æ\97¥æ\9c\9fï¼\8cè¨ç\82ºtrueæ\99\82ï¼\8cæ\9c\83å\9c¨é¦\96尾填å\85¥ä¸\8aä¸\8bæ\9c\88æ\95¸æ\93\9aï¼\8cè\87ªå\8b\95è£\9cå\85¨ä¸\80å\80\8b7*6é\99£å\88\97æ\95¸æ\93\9aã\80\82ï¼\88å\8f¯æ\9b´ç¾\8eè§\80ç\9a\84æ\89\93é\80 ä½ ç\9a\84è\90¬å¹´æ\9b\86ç\94¢品)
-####è¿\94å\9b\9eæ\95°æ\8d®####
+####è¿\94å\9b\9eæ\95¸æ\93\9a####
{
- "firstDay": 5, //该æ\9c\881å\8f·æ\98\9fæ\9c\9få\87 ï¼\88æ\97¥å\8e\86å¼\80始位置)
- "monthDays": 28, //该æ\9c\88天æ\95°
- "monthData": [ //本月所有日历数据
+ "firstDay": 5, //該æ\9c\881è\99\9fæ\98\9fæ\9c\9få¹¾ï¼\88æ\97¥æ\9b\86é\96\8b始位置)
+ "monthDays": 28, //該æ\9c\88天æ\95¸
+ "monthData": [ //本月所有日曆數據
{
- "year": 2014, //公å\8e\86å¹´
- "month": 2, //公å\8e\86æ\9c\88
- "day": 1 //公å\8e\86æ\97¥
+ "year": 2014, //公æ\9b\86å¹´
+ "month": 2, //公æ\9b\86æ\9c\88
+ "day": 1 //公æ\9b\86æ\97¥
},
...
]
}
###LunarCalendar.solarToLunar(year,month,day)###
-å°\86å\85¬å\8e\86转æ\8d¢ä¸ºå\86\9cå\8e\86
+å°\87å\85¬æ\9b\86è½\89æ\8f\9bç\82ºè¾²æ\9b\86
-####å\8f\82æ\95°è¯´明####
-- @param {Number} `year` 公历年 范围[1891-2100]
-- @param {Number} `month` 公历月 范围[1-12]
-- @param {Number} `day` 公历日 范围[1-31]
+####å\8f\83æ\95¸èªª明####
+- @param {Number} `year` 公曆年 範圍[1891-2100]
+- @param {Number} `month` 公曆月 範圍[1-12]
+- @param {Number} `day` 公曆日 範圍[1-31]
-####è¿\94å\9b\9eæ\95°æ\8d®####
+####è¿\94å\9b\9eæ\95¸æ\93\9a####
{
- "zodiac": "è\9b\87", //ç\94\9fè\82\96å±\9e相
- "GanZhiYear": "ç\99¸å·³", //å¹²æ\94¯çºª年
- "GanZhiMonth": "ä¹\99ä¸\91", //å¹²æ\94¯çºª月
- "GanZhiDay": "ç\99¸å\8d¯", //å¹²æ\94¯çºª日
- "worktime": 2, //0无特殊安排,1工作,2放假
- "lunarYear": 2014, //å\86\9cå\8e\86å¹´
- "lunarMonth": 1, //农历月(1-13,有闰月情况,比如当前闰9月,10表示闰9月,11表示10月)
- "lunarDay": 2, //å\86\9cå\8e\86æ\97¥
- "lunarMonthName": "正月", //å\86\9cå\8e\86æ\9c\88ä¸æ\96\87å\90\8d
- "lunarDayName": "初二", //å\86\9cå\8e\86æ\97¥ä¸æ\96\87å\90\8d
- "lunarLeapMonth": 9, //农历闰月所在月份,0表示无闰月
- "solarFestival": "", //公历节假日,undefined或‘劳动节’之类
- "lunarFestival": "", //农历节假日,undefined或‘除夕’之类
- "term": "" //二十四节气名,undefined或‘立春’之类
+ "zodiac": "è\9b\87", //ç\94\9fè\82\96屬相
+ "GanZhiYear": "ç\99¸å·³", //å¹²æ\94¯ç´\80年
+ "GanZhiMonth": "ä¹\99ä¸\91", //å¹²æ\94¯ç´\80月
+ "GanZhiDay": "ç\99¸å\8d¯", //å¹²æ\94¯ç´\80日
+ "worktime": 2, //0無特殊安排,1工作,2放假
+ "lunarYear": 2014, //è¾²æ\9b\86å¹´
+ "lunarMonth": 1, //農曆月(1-13,有閏月情況,比如當前閏9月,10表示閏9月,11表示10月)
+ "lunarDay": 2, //è¾²æ\9b\86æ\97¥
+ "lunarMonthName": "正月", //è¾²æ\9b\86æ\9c\88ä¸æ\96\87å\90\8d
+ "lunarDayName": "初二", //è¾²æ\9b\86æ\97¥ä¸æ\96\87å\90\8d
+ "lunarLeapMonth": 9, //農曆閏月所在月份,0表示無閏月
+ "solarFestival": "", //公曆節假日,undefined或『勞動節』之類
+ "lunarFestival": "", //農曆節假日,undefined或『除夕』之類
+ "term": "" //二十四節氣名,undefined或『立春』之類
}
###LunarCalendar.lunarToSolar(year,month,day)###
-å°\86å\86\9cå\8e\86转æ\8d¢ä¸ºå\85¬å\8e\86
+å°\87è¾²æ\9b\86è½\89æ\8f\9bç\82ºå\85¬æ\9b\86
-####å\8f\82æ\95°è¯´明####
-- @param {Number} `year` 农历年 范围[1891-2100]
-- @param {Number} `month` 农历月 范围[1-13](有闰月情况,比如当前闰9月,10表示闰9月,11表示10月)
-- @param {Number} `day` 农历日 范围[1-30]
+####å\8f\83æ\95¸èªª明####
+- @param {Number} `year` 農曆年 範圍[1891-2100]
+- @param {Number} `month` 農曆月 範圍[1-13](有閏月情況,比如當前閏9月,10表示閏9月,11表示10月)
+- @param {Number} `day` 農曆日 範圍[1-30]
-####è¿\94å\9b\9eæ\95°æ\8d®####
+####è¿\94å\9b\9eæ\95¸æ\93\9a####
{
- "year": 2014, //公å\8e\86å¹´
- "month": 1, //公å\8e\86æ\9c\88
- "day": 31 //公å\8e\86æ\97¥
+ "year": 2014, //公æ\9b\86å¹´
+ "month": 1, //公æ\9b\86æ\9c\88
+ "day": 31 //公æ\9b\86æ\97¥
}
###LunarCalendar.setWorktime(data)###
-设置æ\9f\90å¹´ç\9a\84è\8a\82å\81\87æ\97¥å®\89æ\8e\92ä¿¡æ\81¯ï¼\88ç±»åº\93å·²å\86\85ç½®2013-2014å¹´ç\9a\84æ\95°æ\8d®)
+è¨ç½®æ\9f\90å¹´ç\9a\84ç¯\80å\81\87æ\97¥å®\89æ\8e\92ä¿¡æ\81¯ï¼\88é¡\9e庫已å\85§ç½®2013-2014å¹´ç\9a\84æ\95¸æ\93\9a)
-####å\8f\82æ\95°è¯´明####
-- @param {Object} `data` 节假日安排信息(以年为key,可设置多年)
-- 0:无特殊安排,1:工作,2:放假
+####å\8f\83æ\95¸èªª明####
+- @param {Object} `data` 節假日安排信息(以年為key,可設置多年)
+- 0:無特殊安排,1:工作,2:放假
-**å\8f\82æ\95°data格式如下:**
+**å\8f\83æ\95¸data格式如下:**
{
"y2014": {
}
}
-##黄历数据##
-在目录/hl/下有2008-2020年的黄历数据,用户可自行选择在自己万年历中进行添加。
+##黃曆數據##
+在目錄/hl/下有2008-2020年的黃曆數據,用戶可自行選擇在自己萬年曆中進行添加。
+
+##公用服務器API##
+用Node.js搭載lunar-calendar類庫。
+
+- API:http://api.tuijs.com/
+- 請求類型:GET
+- 返回數據:JSON 或 JSONP
+- JSONP:支持,添加參數callback(僅支持數字,字母,下劃線)
+
+###API列表###
+
+- 通過公曆獲取某月農曆數據 http://api.tuijs.com/calendar
+- 獲取公曆某月日曆數據(不帶農曆信息)http://api.tuijs.com/solarCalendar
+- 將公曆轉換為農曆http://api.tuijs.com/solarToLunar
+- 將農曆轉換為公曆http://api.tuijs.com/lunarToSolar
+
+**例如:**
+
+http://api.tuijs.com/lunarToSolar?year=2011&month=1&day=1&callback=fn
+
+返回:
+`fn({"year":2011,"month":2,"day":16})`
##其它##
-- 项ç\9b®ä¸»é¡µï¼\9a[http://www.tuijs.com/](http://www.tuijs.com/ "项ç\9b®ä¸»é¡µ")
+- é \85ç\9b®ä¸»é \81ï¼\9a[http://www.tuijs.com/](http://www.tuijs.com/ "é \85ç\9b®ä¸»é \81")
- 作者博客:[http://www.2fz1.com/](http://www.2fz1.com/ "作者博客")
JasonZhou
\ No newline at end of file