ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript変換旧暦クラス実装とmethod_javascriptスキルの呼び出し

JavaScript変換旧暦クラス実装とmethod_javascriptスキルの呼び出し

WBOY
WBOYオリジナル
2016-05-16 17:42:481083ブラウズ
コードをコピー コードは次のとおりです:

var LunarDate = {
madd: new Array( 0, 31 , 59, 90, 120, 151, 181, 212, 243, 273, 304, 334)、
HsString: 'A、B、Bing、Ding、Wiji、Geng、Xinrengui'、
EbString : 'Zichou yingmaochen Siwu Weishen Youxuhai '、
NumString: "One Two Three Four Five Six Seven Eight Ninety"、
MonString: "Positive Two Three Four Five Six Seven Eight Ninety"、
CalendarData: new Array (0xA4B、0x5164B、0x6A5、0x6D4、0x415B5、0x2B6、0x957、0x2092F、0x497、0x60C96、0xD4A、0xEA5、0x50DA9、0x5AD、0x2B6、0x3126E、0 x92E、0x7192D、0xC95、0xD4A、0x61B4A、0xB55、0x56A、0x4155B、 0x25D、0x92D、0x2192B、0xA95、0x71695、0x6CA、0xB55、0x50AB5、0x4DA、0xA5B、0x30A57、0x52B、0x8152A、0xE95、0x6AA、0x615AA、 5、0x4B6、0x41 4AE、0xA57、0x526、0x31D26、0xD95、0x70B55、0x56A 、0x96D、0x5095D、0x4AD、0xA4D、0x41A4D、0xD25、0x81AA5、0xB54、0xB6A、0x612DA、0x95B、0x49B、0x41497、0xA4B、0xA164B、 0x6D4、0x615B4、0xAB6、0x957、0x5092F、0x497、0x64B、0x30D4A、 0xEA5、0x80D65、0x5AC、0xAB6、0x5126D、0x92E、0xC96、0x41A95、0xD4A、0xDA5、0x20B55、0x56A、0x7155B、0x25D、0x92D、0x5192B、0x A95、0xB4A、0x416AA、0xAD5、0x90AB5、0x4BA、0xA5B、0x60A57、0x52B 、0xA93、0x40E95)、
年: null、
月: null、
日: null、
TheDate: null、
GetBit: function(m, n){
return (m >> n ) & 1;
},
e2c: function(){
this.TheDate = (arguments.length != 3) new Date(): new Date(arguments) [0]、引数[1 ]、引数[2]);
var isEnd = false;
var tmp = this.TheDate.getFullyear(); 🎜>合計 = (tmp - 1921) * 365 Math.floor((tmp - 1921) / 4) this.madd[this.TheDate.getMonth()] this.TheDate.getDate() - 38;
if ( this.TheDate.get Year() % 4 == 0 && this.TheDate.getMonth() > 1) {
合計 ;
}
for (m = 0; ; m ) {
k = (this.CalendarData[ m] for (n = k; n >= 0; n--) {
if (total isEnd = true;
break;
}
total = total - 29 - this.GetBit(this.CalendarData[m], n) );
}
if (isEnd)
}
this.year = 1921 m;
this.Day = 合計;
if (k == 12) {
if (this.Month == Math.floor(this.CalendarData[m] / 0x10000) 1) {
this.Month = 1 - this .Month;
}
if (this.Month > Math.floor(this.CalendarData[m] / 0x10000) 1) {
this.Month--;
},
GetcDateString: function(){
var tmp = "";
tmp = this.HsString.charAt((this.year - 4) % 10); this.EbString.charAt(( this. Year - 4) % 12);
tmp = "年";
if (this.Month tmp = "(閏年)";
tmp = this.MonString.charAt(-this.Month - 1);
} else {
tmp = this.MonString.charAt(this.Month - 1); tmp = "月";
tmp = (this.Day if (this.Day % 10 != 0 || this.Day == 10) {
tmp = this.NumString.charAt((this.Day - 1) % 10);
}
return tmp;
GetLunarDay: function(solar Year, SolarMonth, SolarDay) {
if (solar Year < 1921 || 太陽年 > 2020) {
return "";
} else {
solarMonth = (parseInt(solarMonth) > 0) ? (solarMonth - 1): 11;
return this.GetcDateString ();
}
}



メソッドの呼び出し:




コードをコピーします


コードは次のとおりです:

LunarDate.GetLunarDay(2013, 1, 24);
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。