如何使用javascript 将阳历的日期 转换为 阴历日期? 急急!

比如:

阳历日期为:2008-2-20

请将此阳历日期转换为 阴历日期

用javascript实现,等待中……
------------------------

引用:
------------
tiandaqian 发表于:2008-02-20 23:12:303楼 得分:0
代码有,就是比较长,给你个网址不算侵权吧,haha
http://ark.hit.edu.cn/Pages/calendar.htm


农历与公历的关联是告24节气关联的,重点理解这一句的用途:
var solarTerm = new Array("小寒","大寒","立春","雨水","惊蛰","春分","清明","谷雨","立夏","小满","芒种","夏至","小暑","大暑","立秋","处暑","白露","秋分","寒露","霜降","立冬","小雪","大雪","冬至");
var sTermInfo = new Array(0,21208,42467,63836,85337,107014,128867,150921,173149,195551,218072,240693,263343,285989,308563,331033,353350,375494,397447,419210,440795,462224,483532,504758);

该算法里农历闰月是用数组列出的,重点理解这一句:
var lunarInfo=new Array(
0x4bd8,0x4ae0,0xa570,0x54d5,0xd260,0xd950,0x5554,0x56af,0x9ad0,0x55d2,
0x4ae0,0xa5b6,0xa4d0,0xd250,0xd295,0xb54f,0xd6a0,0xada2,0x95b0,0x4977,
0x497f,0xa4b0,0xb4b5,0x6a50,0x6d40,0xab54,0x2b6f,0x9570,0x52f2,0x4970,
0x6566,0xd4a0,0xea50,0x6a95,0x5adf,0x2b60,0x86e3,0x92ef,0xc8d7,0xc95f,
0xd4a0,0xd8a6,0xb55f,0x56a0,0xa5b4,0x25df,0x92d0,0xd2b2,0xa950,0xb557,
0x6ca0,0xb550,0x5355,0x4daf,0xa5b0,0x4573,0x52bf,0xa9a8,0xe950,0x6aa0,
0xaea6,0xab50,0x4b60,0xaae4,0xa570,0x5260,0xf263,0xd950,0x5b57,0x56a0,
0x96d0,0x4dd5,0x4ad0,0xa4d0,0xd4d4,0xd250,0xd558,0xb540,0xb6a0,0x95a6,
0x95bf,0x49b0,0xa974,0xa4b0,0xb27a,0x6a50,0x6d40,0xaf46,0xab60,0x9570,
0x4af5,0x4970,0x64b0,0x74a3,0xea50,0x6b58,0x5ac0,0xab60,0x96d5,0x92e0,
0xc960,0xd954,0xd4a0,0xda50,0x7552,0x56a0,0xabb7,0x25d0,0x92d0,0xcab5,
0xa950,0xb4a0,0xbaa4,0xad50,0x55d9,0x4ba0,0xa5b0,0x5176,0x52bf,0xa930,
0x7954,0x6aa0,0xad50,0x5b52,0x4b60,0xa6e6,0xa4e0,0xd260,0xea65,0xd530,
0x5aa0,0x76a3,0x96d0,0x4afb,0x4ad0,0xa4d0,0xd0b6,0xd25f,0xd520,0xdd45,
0xb5a0,0x56d0,0x55b2,0x49b0,0xa577,0xa4b0,0xaa50,0xb255,0x6d2f,0xada0,
0x4b63,0x937f,0x49f8,0x4970,0x64b0,0x68a6,0xea5f,0x6b20,0xa6c4,0xaaef,
0x92e0,0xd2e3,0xc960,0xd557,0xd4a0,0xda50,0x5d55,0x56a0,0xa6d0,0x55d4,
0x52d0,0xa9b8,0xa950,0xb4a0,0xb6a6,0xad50,0x55a0,0xaba4,0xa5b0,0x52b0,
0xb273,0x6930,0x7337,0x6aa0,0xad50,0x4b55,0x4b6f,0xa570,0x54e4,0xd260,
0xe968,0xd520,0xdaa0,0x6aa6,0x56df,0x4ae0,0xa9d4,0xa4d0,0xd150,0xf252,
0xd520);



另外,转一篇JK写的一些历法常的文章:

几点天文历法常识
曾碰到过好几个朋友,跟我硬拗节气跟公历有没关系的问题,
故此感觉很多朋友天文知识不够,
就顺便讲一下一些天文历法常识:

---------------------------
1。公历和二十四节气
地球绕太阳转,轨迹为椭圆,周期为365.22XXXXX * 24 小时,
公转面为黄道平面,
近日点所在的那一天为公历元月一日

地球自转,
当太阳在经过转轴的黄道面的正交面上时,为夏至冬至点。
(由为自转轴并不平行于经过长轴的黄道面的正交面,所以近日点并不是冬至点。)
以夏至点和冬至点为 x轴,每十五度一分,可以得到二十四个节气点。
地球公转,每年都一样,
从近日点到各节气点的时间也是每年都一样,
这样,我们就可以推算出二十四节气了。

------------------
2。农历和二十四节气
月球绕地球公转,相对于地球,其周期为29。XXX * 24 小时;
月球也自转,相对于一求来说,它的自转周期跟公转周期一样,所以我们不管什么时间看月亮,它上面的黑影形状位置都是一样的。

农历以月圆月缺来定月,所以一月要么是29天,要么是30天。
每一个数对应的月都有一个中气点,假设某个月没有中气点,那就闰这个月,以保证这个数字对应的月份有一个中气点。
至于每月是29天或是30天,可能以前也算得不大准/或者后来有了变化,近代经过修正,通常用查表法来得到。

------------------
3。日食月食
月亮的影子落在地球上,影子内的人就可以看到日食
地球的影子落到月球上,地球上的人就可以看到月食
所以:各地的人,看到的日食不一样,但看到的月食是一样的(只要能看到当时的月亮)

------------------
4。历法的修正
地球公转自转并不是一成不变
例如:
慧星/小行星撞球,会影响地球的自转和公转;
如果说地震导至喜马拉雅山垮塌,地球自转会加速;
人类移山填海,也会让地球自转加速;
南极的冰川融化,海平面升高,地球自转会减速;
。。。
所以如果我们现在就定死一年为265.22XXXX,这也是不科学的,
同样的道理,
虽说我们可以从史书上看到某年某月某日某地发生日食,但是如果按现在的历法反推,很可能那年没有发生日食。

------------
一口气写了以上,不是专业人事,难免错漏,见谅。

 
固定链接

http://jkisjk.spaces.live.com/blog/cns!758CACE25E89DD3B!380.entry

加支付宝好友偷能量挖...


评论(0)网络
阅读(156)喜欢(1)JavaScript/Ajax开发技巧