JS Date对象 API

本文介绍了JavaScript中的Date对象,用于处理日期和时间。通过new Date()创建实例,使用getFullYear(), getMonth(), getDate(), getHours()等方法获取日期和时间信息,转换为本地字符串,并探讨了设置日期的方法如setFullYear()和setTime()。此外,还提供了一个实际应用案例,计算员工入职、合同到期和续签时间。" 79169267,7452492,CRH5.1在Power9上的安装及Hadoop功能实战,"['Hadoop', 'Power9']

Date对象

 用于日期时间的存储和计算

 (1)创建

  new Date('2021/8/17 11:44:30')

  new Date(2021,7,17,11,44,30)   //月份范围0~11代表1~12月

  new Date()    存储的是当前操作系统的时间

  new Date(1683036000000)   存储的是距离计算机元年(1970-1-1 0:0:0 0)的毫秒数 

 //字符串

var d1=new Date('2021/8/17 11:24:30');

//参数  0~11代表1~12月
var d2=new Date(2021,7,17,11,24,30);

//空  当前操作系统的时间
var d3=new Date();

//距离计算机元年(1970-1-1 0:0:0 0)的毫秒
var d4=new Date(1608336000000);

console.log(d4);

 (2)获取

  getFullYear() 获取完整的年份

getMonth() 获取当前月份

      月份的范围是0~11代表1~12月

getDate() 获取当前日

  getHours() 获取当前小时数

getMinutes() 获取当前分钟数

getSeconds() 获取当前秒数

getMilliseconds()  获取毫秒

  getDay()    获取星期  0~6  对应 星期日~星期六

  getTime()   获取距离计算机元年的毫秒数

var d=new Date('2021/8/17 11:50:30');

//获取完整的年份
console.log(d.getFullYear());

//获取当前月份
console.log(d.getMonth()+1);//0~11

//获取当前日
console.log(d.getDate());

//获取当前小时数
console.log(d.getHours());

//获取当前分钟数
console.log(d.getMinutes());

//获取当前秒数
console.log(d.getSeconds());

//距离计算机元年毫秒数
console.log(d.getTime());

//0~6  周日~周六
console.log(d.getDay());

 (3)转为本地字符串

  存在兼容性问题只能用于调试

  toLocaleString()    //'2021-8-17  15:28:30'

  toLocaleDateString()    //'2021-8-17'

  toLocaleTimeString()    //'15:28:30'

var d=new Date('2021/8/17 15:21:40');

//转为本地字符串 日期与时间
console.log(d.toLocaleString());

//转为本地字符串 年月日
console.log(d.toLocaleDateString());

//转为本地字符串 时间
console.log(d.toLocaleTimeString());

 (4)设置

  setFullYear()/setMonth()/setDate()

  setHours()/setMinutes()/setSeconds()/setMilliseconds()

  setTime()  设置距离计算机元年毫秒数会产生一个具体的日期时间

//设置

var d=new Date('2021/8/17 15:21:40');

d.setFullYear(2024);//年
d.setMonth(0);//月
d.setDate(20);//日
//d.setDay();没有这个方法
d.setTime(1572378490000)//设置距离元年毫秒数,会产生一个具体的日期时间
console.log(d.toLocaleString());

练习:假设一个员工的入职时间是2021/8/17,合同期为3年,合同到期前一个月要发起续签计算出以下时间

//入职时间:

//到期时间:

//续签时间:月-1

var d1=new Date('2021/8/17');

//拷贝一份入职时间,作为到期时间
var d2=new Date(d1);

d2.setFullYear(d2.getFullYear()+3);

//拷贝一份到期时间,作为续签时间
var d3=new Date(d2);

//提前一个月
d3.setMonth(d2.getMonth()-1);

console.log('入职时间:'+d1.toLocaleDateString());
console.log('到期时间:'+d2.toLocaleDateString());
console.log('续签时间:'+d3.toLocaleDateString());

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

D_evin_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值