手机版

JS用农历实现日历功能

时间:2021-08-27 来源:互联网 编辑:宝哥软件园 浏览:

本文给出了一个用农历实现日历功能的例子。分享给大家参考,如下:

工作中要用阴历写日历,自己也研究过怎么做日历。

首先,表中的行数

因为您想要显示日期表,所以您必须首先知道该表中有多少行和列,并且已经确定了列的数量。从星期日(日历中的第一列是星期日)到星期六有7列。要解决行号问题,首先要知道这个月的第一天是星期几,因为每个月的第一天不是从日历上的周日开始安排的,可能第一天是周五或者周六,所以第一天的左边部分就要换成空表。应该改为使用多少个空表?这里使用了getDay()方法,该方法返回数组[0-6]中的一个数字,其中0代表星期日,1代表星期一,2代表星期二,依此类推。因此,如果一个月的第一天是星期五,需要五张空表来替换它。那么,如果一个月有31天,最终表中的行数是:

var tr _ nums=Math . ceil((5 31)/7);当然,不是每个月都是31天,所以我们要创建一个包含12个月的数组,每个元素代表每个月的天数。但2月比较特殊,闰年2月有29天,正常年份2月只有28天。因此,在创建数组之前,您必须创建一个函数:来判断闰年

//如果当年可被4整除但不能被100整除或不能被400整除,则可以确定为闰年,返回1;否则,0函数是leap (year) {return year% 4==0?(年份百分百!=0 ?1 :(年份% 400==0?1 : 0)) : 0;}然后我们创建一个月数组:

var days_per_month=新数组(31,28 isLeap(年),31,30,31,30,31,31,30,31,30,31,30,31,30,31);这将确保正常年份和闰年都有正确的天数。以下代码用于获取今天的相关信息:

Var today=new Date(),//获取当前日期y=today.getFullYear(),//获取年份m=today.getMonth(),//获取日期中的月份(需要注意的是月份是从0开始计算的。获取的值比正常月份的值小1)d=today.getDate(),//获取日期中的日期(创建日期表时便于突出显示日期)firstday=new Date(y,m,1),//获取月份的第一天day fweek=first day . getday(),//判断第一天的日期(返回[0-6]中的一个,0代表星期日,1代表星期一,以此类推)days _ per _ month=new array (31,28是leap (y),31

var str _ nums=math . ceil((dayOfWeek days _ per _ month[m])/7);//确定日期表所需的行数。完整的js代码:

Script //判断当前年份是否为闰年(闰年2月有29天,正常年份2月只有28天)。函数是leap (year) {return year% 4==0。(年份百分百!=0 ?1 :(年份% 400==0?1 : 0)) : 0;} var i,k,today=new Date(),//获取当前日期y=today.getFullYear(),//获取年份m=today.getMonth(),//获取日期中的月份(需要注意的是月份是从0开始计算的。获取的值比正常月份的值小1) d=today.getDate(),//获取日期中的日期(创建日期表时便于突出显示日期)firstday=new Date(y,m,1),//获取月份的第一天day fweek=first day . getday(),//判断第一天的日期(返回[0-6]中的一个,0代表星期日,1代表星期一,以此类推)days _ per _ month=new array (31,28是leap (y),31

版权声明:JS用农历实现日历功能是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。