求js详细时间代码,年月日星期时分(秒),阴历日期

JavaScript024

求js详细时间代码,年月日星期时分(秒),阴历日期,第1张

function RunGLNL(){ var today=new Date()var d=new Array("星期日","星期一","星期二","星期三","星期四","星期五","星期六")var DDDD=(today.getYear()<100 ? today.getYear()+1900:today.getYear())+"年"+(today.getMonth()+1)+"月"+today.getDate()+"日"DDDD = DDDD + " " + d[today.getDay()]DDDD = DDDD+ " " + (CnDateofDateStr(today))//DDDD = DDDD+ " " + SolarTerm(today)document.write(DDDD)} function DaysNumberofDate(DateGL){ return parseInt((Date.parse(DateGL)-Date.parse(DateGL.getYear()+"/1/1"))/86400000)+1} function CnDateofDate(DateGL){ var CnData=new Array( 0x16,0x2a,0xda,0x00,0x83,0x49,0xb6,0x05,0x0e,0x64,0xbb,0x00,0x19,0xb2,0x5b,0x00, 0x87,0x6a,0x57,0x04,0x12,0x75,0x2b,0x00,0x1d,0xb6,0x95,0x00,0x8a,0xad,0x55,0x02, 0x15,0x55,0xaa,0x00,0x82,0x55,0x6c,0x07,0x0d,0xc9,0x76,0x00,0x17,0x64,0xb7,0x00, 0x86,0xe4,0xae,0x05,0x11,0xea,0x56,0x00,0x1b,0x6d,0x2a,0x00,0x88,0x5a,0xaa,0x04, 0x14,0xad,0x55,0x00,0x81,0xaa,0xd5,0x09,0x0b,0x52,0xea,0x00,0x16,0xa9,0x6d,0x00, 0x84,0xa9,0x5d,0x06,0x0f,0xd4,0xae,0x00,0x1a,0xea,0x4d,0x00,0x87,0xba,0x55,0x04 )var CnMonth=new Array()var CnMonthDays=new Array()var CnBeginDayvar LeapMonthvar Bytes=new Array()var Ivar CnMonthDatavar DaysCountvar CnDaysCountvar ResultMonthvar ResultDayvar yyyy=DateGL.getYear()var mm=DateGL.getMonth()+1var dd=DateGL.getDate()if(yyyy<100) yyyy+=1900if ((yyyy <1997) || (yyyy >2020)){ return 0} Bytes[0] = CnData[(yyyy - 1997) * 4]Bytes[1] = CnData[(yyyy - 1997) * 4 + 1]Bytes[2] = CnData[(yyyy - 1997) * 4 + 2]Bytes[3] = CnData[(yyyy - 1997) * 4 + 3]if ((Bytes[0] &0x80) != 0) {CnMonth[0] = 12} else {CnMonth[0] = 11} CnBeginDay = (Bytes[0] &0x7f)CnMonthData = Bytes[1]CnMonthData = CnMonthData <<8CnMonthData = CnMonthData | Bytes[2]LeapMonth = Bytes[3]for (I=15I>=0I--){ CnMonthDays[15 - I] = 29if (((1 <<I) &CnMonthData) != 0 ){ CnMonthDays[15 - I]++} if (CnMonth[15 - I] == LeapMonth ){ CnMonth[15 - I + 1] = - LeapMonth} else{ if (CnMonth[15 - I] <0 ){CnMonth[15 - I + 1] = - CnMonth[15 - I] + 1} else {CnMonth[15 - I + 1] = CnMonth[15 - I] + 1} if (CnMonth[15 - I + 1] >12 ){ CnMonth[15 - I + 1] = 1} } } DaysCount = DaysNumberofDate(DateGL) - 1if (DaysCount <= (CnMonthDays[0] - CnBeginDay)){ if ((yyyy >1901) &&(CnDateofDate(new Date((yyyy - 1)+"/12/31")) <0)){ ResultMonth = - CnMonth[0]} else {ResultMonth = CnMonth[0]} ResultDay = CnBeginDay + DaysCount} else{ CnDaysCount = CnMonthDays[0] - CnBeginDayI = 1while ((CnDaysCount <DaysCount) &&(CnDaysCount + CnMonthDays[I] <DaysCount)){ CnDaysCount+= CnMonthDays[I]I++} ResultMonth = CnMonth[I]ResultDay = DaysCount - CnDaysCount} if (ResultMonth >0){ return ResultMonth * 100 + ResultDay} else{return ResultMonth * 100 - ResultDay} } function CnYearofDate(DateGL){ var YYYY=DateGL.getYear()var MM=DateGL.getMonth()+1var CnMM=parseInt(Math.abs(CnDateofDate(DateGL))/100)if(YYYY<100) YYYY+=1900if(CnMM>MM) YYYY--YYYY-=1864return CnEra(YYYY)+"年"} function CnMonthofDate(DateGL){ var CnMonthStr=new Array("零","正","二","三","四","五","六","七","八","九","十","十一","腊")var MonthMonth = parseInt(CnDateofDate(DateGL)/100)if (Month <0){return "闰" + CnMonthStr[-Month] + "月"} else{return CnMonthStr[Month] + "月"} } function CnDayofDate(DateGL){ var CnDayStr=new Array("零", "初一", "初二", "初三", "初四", "初五", "初六", "初七", "初八", "初九", "初十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九", "二十", "廿一", "廿二", "廿三", "廿四", "廿五", "廿六", "廿七", "廿八", "廿九", "三十")var DayDay = (Math.abs(CnDateofDate(DateGL)))%100return CnDayStr[Day]} function DaysNumberofMonth(DateGL){ var MM1=DateGL.getYear()MM1<100 ? MM1+=1900:MM1var MM2=MM1MM1+="/"+(DateGL.getMonth()+1)MM2+="/"+(DateGL.getMonth()+2)MM1+="/1"MM2+="/1"return parseInt((Date.parse(MM2)-Date.parse(MM1))/86400000)} function CnEra(YYYY){ var Tiangan=new Array("甲","乙","丙","丁","戊","己","庚","辛","壬","癸")//var Dizhi=new Array("子(鼠)","丑(牛)","寅(虎)","卯(兔)","辰(龙)","巳(蛇)", //"午(马)","未(羊)","申(猴)","酉(鸡)","戌(狗)","亥(猪)")var Dizhi=new Array("子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥")return Tiangan[YYYY%10]+Dizhi[YYYY%12]} function CnDateofDateStr(DateGL){ if(CnMonthofDate(DateGL)=="零月") return " 请调整您的计算机日期!"else return "农历:"+CnYearofDate(DateGL)+ " " + CnMonthofDate(DateGL) + CnDayofDate(DateGL)} function SolarTerm(DateGL){ var SolarTermStr=new Array( "小寒","大寒","立春","雨水","惊蛰","春分", "清明","谷雨","立夏","小满","芒种","夏至", "小暑","大暑","立秋","处暑","白露","秋分", "寒露","霜降","立冬","小雪","大雪","冬至")var DifferenceInMonth=new Array( 1272060,1275495,1281180,1289445,1299225,1310355, 1321560,1333035,1342770,1350855,1356420,1359045, 1358580,1355055,1348695,1340040,1329630,1318455, 1306935,1297380,1286865,1277730,1274550,1271556)var DifferenceInYear=31556926var BeginTime=new Date(1901/1/1)BeginTime.setTime(947120460000)for(DateGL.getYear()<BeginTime.getYear()){ BeginTime.setTime(BeginTime.getTime()-DifferenceInYear*1000)} for(DateGL.getYear()>BeginTime.getYear()){ BeginTime.setTime(BeginTime.getTime()+DifferenceInYear*1000)} for(var M=0DateGL.getMonth()>BeginTime.getMonth()M++){ BeginTime.setTime(BeginTime.getTime()+DifferenceInMonth[M]*1000)} if(DateGL.getDate()>BeginTime.getDate()){ BeginTime.setTime(BeginTime.getTime()+DifferenceInMonth[M]*1000)M++} if(DateGL.getDate()>BeginTime.getDate()){ BeginTime.setTime(BeginTime.getTime()+DifferenceInMonth[M]*1000)M==23?M=0:M++} var JQif(DateGL.getDate()==BeginTime.getDate()){ JQ=" 今天是<font color='#FF9999'><b>"+SolarTermStr[M] + "</b></font>"} else if(DateGL.getDate()==BeginTime.getDate()-1){ JQ=" 明天是<font color='#FF9999'><b>"+SolarTermStr[M] + "</b></font>"} else if(DateGL.getDate()==BeginTime.getDate()-2){ JQ=" 后天是<font color='#FF9999'><b>"+SolarTermStr[M] + "</b></font>"} else{ JQ=" " if(DateGL.getMonth()==BeginTime.getMonth()){ JQ+=" 本月"} else{ JQ+=" 下月"} JQ+=BeginTime.getDate()+"日"+"<font color='#FF9999'><b>"+SolarTermStr[M]+"</b></font>"} return JQ} function CAL() {} RunGLNL() 详细出处参考: http://www.jb51.net/article/17021.htm

需要准备的材料分别有:电脑、html编辑器、浏览器。

1、首先,打开html编辑器,新建html文件,例如:index.html。

2、在index.html中的<script>标签,输入js代码:var a = 1562060142000document.body.innerText = new Date(a)。

3、浏览器运行index.html页面,此时时间被转化为年月日时分秒打印出来了。

1. 将日期转换为指定的格式:比如转换成 年月日时分秒 这种格式:yyyy-MM-dd hh:mm:ss 或者 yyyy-MM-dd。当然是网上的方法,只是总结下。

可以为Date原型添加如下的方法:

Date.prototype.format = function(fmt) {

var o = {

"M+" : this.getMonth()+1, //月份

"d+" : this.getDate(),//日

"h+" : this.getHours(), //小时

"m+" : this.getMinutes(), //分

"s+" : this.getSeconds(), //秒

"q+" : Math.floor((this.getMonth()+3)/3), //季度

"S" : this.getMilliseconds() //毫秒

}

if(/(y+)/.test(fmt)) {

fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length))

}

for(var k in o) {

if(new RegExp("("+ k +")").test(fmt)){

fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)))

}

}

return fmt

}

比如我们可以这样调用下:

var time1 = new Date().format("yyyy-MM-dd hh:mm:ss")

console.log(time1)