Bono de puntuación alta: un algoritmo para convertir fechas del calendario solar en fechas del calendario lunar
var CalendarData = nueva matriz(20);
var madd = nueva matriz(12); la Fecha = nueva Fecha();
Var tgString= "A, B, D, E, G, N, N ";
Var dzString= "Hijo feo Tatsumi, mediodía Carta de presentación fallida";
Var numString= "Uno Dos Tres Cuatro Cinco Seis Siete Ocho Nueve Diez";
Var monString= "Agregar Dos Tres Cuatro Cinco Seis Siete Ocho Nueve Cera de Invierno ";
Var semanaString= "Día uno, dos, tres, cuatro, cinco, seis";
Var sx= "Rata, Buey, Tigre, Conejo, Dragón, Serpiente, Caballo, Oveja, Mono, Pollo, Perro, Cerdo";
var cAño
var cMes
var cDía
var cHora
var cDateString
var DateString
var Browser = navigator.appName
Función init()
{
datos del calendario[0]= 0x 41a 95;
datos del calendario[1]= 0xD4A;
datos del calendario[2]= 0x da 5; p>
datos del calendario[3]= 0x20b 55;
datos del calendario[4]= 0x56A;
datos del calendario[5]= 0x 7155 b;
datos del calendario [6]= 0x25D;
datos del calendario[7]= 0x92D;
datos del calendario[8]= 0x 5192 b;
datos de calendario[9] = 0xa 95;
datos de calendario[10]= 0xB4A;
datos de calendario[11]= 0x 416AA;
datos de calendario[ 12]= 0x ad 5;
datos del calendario[13]= 0x 90 ab 5;
datos del calendario[14]= 0x4BA;
datos del calendario[ 15]= 0xA5B;
datos del calendario[16]= 0x60a 57;
datos del calendario[17]= 0x52B;
datos del calendario[18]= 0xa 93;
datos del calendario[19]= 0x40e 95;
madd[0]= 0;
madd[1]= 31;
madd[ 2]= 59;
madd[3]= 90;
madd[4]= 120;
madd[5]= 151;
madd[6]= 181;
madd[7]= 212;
madd[8]= 243; >mad
[9]= 273;
madd[10]= 304;
madd[11]= 334;
}
Función GetBit(m, n)
{
return(m gt; gtn) amp 1; )
{
var total, m, n, k;
var isEnd = false
var tmp = la fecha. año();
if(tmp lt;1900)tmp = 1900;
Total=(tmp-2001)*365
Math.floor(( tmp-2001)/4)
madd[TheDate.getMonth()]
TheDate.getDate()
-23;
if(la fecha . getyear() 4 = = 0 amp; ampla fecha . getmonth() gt; 1)
total
for(m = 0;; m)
{
k = (datos del calendario[m] lt; 0xfff)? 11:12;
for(n = k; n gt=0; n -)
{
if(totallt=29 GetBit(CalendarData[ m ], n))
{
isEnd = true
Break;
}
total = total -29-GetBit(datos del calendario[m],n);
}
Si (isEnd) interrumpe;
}
cy oreja = 2001 m;
cMes = k-n 1;
cDía = total;
si (k==12)
{
if(cMes = = matemáticas. piso(datos del calendario[m]/0x 10000) 1)
cMes = 1-cMes;
if ( cMes gt; matemáticas . piso(datos del calendario[m]/0x 10000) 1)
cMes-;
}
cHora = matemáticas . la fecha . obtener horas() 3)/2);
}
Función GetcDateString()
{
var tmp =.
tmp = TG string . charat((cy ear-4) 10);//Trabajo anual
tmp = dz string . //Gasto anual
Tmp = "año(";
tmp = sx . charat((cy ear-4) 12);
tmp = " );
if(cMes lt;1)
{
tmp = " salto ";
tmp = monstring
.charat(-cMonth-1);
}
Otros
tmp = monstring .charat(cMonth-1);
Tmp = "mes";
tmp =(cDía lt;11)?《Chu》:((cdía
if(cDía10!=0||cDía==10)
tmp = numstring .charat((cDía-1) 10);
if(cHora == 13)tmp = " noche ";
tmp = dz string .charat((cHour-1) 12);
Tmp = "cuando";
cDateString = tmp
Devolver tmp
}
Función GetDateString()
{
var tmp =
var t 1 = la fecha obtener año();
if(t 1 lt; 1900)t 1 = 1900
tmp =t1
"-"
(la fecha . getmonth() 1) "-"
TheDate.getDate() " "
TheDate.getHours() ":"
((la fecha . get minutos() lt; 10)? "0": "")
TheDate.getMinutes()
" semana " cadena de semana .
DateString = tmp
Devolver tmp
}
init();
e2c();
obtener cadena de fecha();
GetcDateString();
document.write(DateString, "ltbr>;, cDateString);
lt/script gt;