使用js中的Date对象计算某年某月某日

2018-01-31T22:29:32

使用方法

new Date():创建对象,不传参为当前时间,也可以传参数设置时间。

getFullYear():得到年份

getMonth():得到一个数x∈[0,11],所以月份应为x+1

getDate():得到日期

getDay():得到一个数x∈[0,6],其中0表示星期日,通常定义数组x作为数组下标来存储星期

getHours():小时

getMinutes():分钟

getSeconds():秒

getTime():返回从1970/1/1日到现在的毫秒数,基本用不到

 

有get当然就有set了 :neutral:

setFullYear():设置年份

setMonth():设置月份,从0开始表示一月

set.......(此处省掉上面几个)

设置时间不仅可以通过set..()的方法,可以在创建date对象时就传参数,new Date(),也可以都传,也可以就传一部分,比如就传个年月日,高兴就好。new Date()容错性还不错,如果new Date(2018,13,31)它是不会报错的,因为它直接给你显示到下一年去了。

 

date对象综合运用的一个实例

创建Date对象保存员工入职日期,合同有效期是3年。当用户输入员工的入职日期后,页面能显示出该员工是什么时候入职的,以及合同到期日期。

var ruyear = Number(prompt("请输入员工的入职年份")),
  rumonth = Number(prompt("请输入员工的入职月份")),
  rudate = Number(prompt("请输入员工的入职时间"));
document.write("该员工入职的时间是:" + ruyear + "-" + rumonth + "-" + rudate);
function daodate() {//定义一个函数输出合同到期时间
  var daoqi = new Date(ruyear + 3, rumonth - 1, rudate);
  document.write("该员工合同到期时间是:" + daoqi.getFullYear() + "-" + (daoqi.getMonth() + 1) + "-" + daoqi.getDate());
}
daodate();

要注意的是:

1.页面中输入的数据皆是字符串,因后面步骤涉及到运算,故要将输入框里的数据类型转化为数字。

2.输入的月份存入变量的时候要-1,输出合同到期月份的时候我们要+1(毕竟它是0~11的)。

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »
因本文不是用Markdown格式的编辑器书写的,转换的页面可能不符合MIP标准。