7.Date() 对象

利用 new Date 对象创建一个 JavaScript Date 实例,该实例呈现时间中的某个时刻。

1.new Date() 方式 创建时间实例,不过是 Sun Mar 12 12006 22:12:12 GMT+0800 (中国标准时间) 这种格式

没有传参的时候返回的是当前时间,有传参的时候,传的参数对应年月日时分秒,当至少提供了年份与月份或者月份和日份时,这一形式的 Date() 返回的 Date 对象没有提供的成员将使用最小可能值(对日期为 1,对年份为 2001,其他为 0)。

  • new Date() 当前时间。

  const time = new Date(); // Mon Apr 22 2024 20:37:34 GMT+0800 (中国标准时间)
  • new Date('month,dd,yyyy hh:mm:ss') 指定月 日 年 时 分 秒。

  const time = new Date("03,05,2002 15:06:50"); //Tue Mar 05 2002 15:06:50 GMT+0800 (中国标准时间)
  • new Date('month,dd,yyyy') 指定月 日 年,没有传的时分秒按照最小值

  const time = new Date("03,05,2002"); // Tue Mar 05 2002 00:00:00 GMT+0800 (中国标准时间)
  • new Date('month,dd') 指定月 日,没有传的年按照 2001

  const time = new Date("03,05"); // Mon Mar 05 2001 00:00:00 GMT+0800 (中国标准时间)
  • new Date('yyyy, month') 指定年 月,这里虽然和上面一样都是传两个参数,但是由于我们第一个参数是四位数的(两位数也行比如99就会被认定为1999,超过12都会认定为年份),会判定为年,所以第二个参数为 月

  const time = new Date("2003,05"); // Thu May 01 2003 00:00:00 GMT+0800 (中国标准时间)
  • new Date('yyyy, month, dd hh:mm:ss') 指定年 月 日 时 分 秒,最常用。

  const time = new Date("2003,05,02 15:23:12"); // Fri May 02 2003 15:23:12 GMT+0800 (中国标准时间)
  • - new Date('yyyy, month, dd') 指定年 月 日。

  const time = new Date("2003,05,02"); // Fri May 02 2003 00:00:00 GMT+0800 (中国标准时间)
  • new Date(ms) 指定时间戳对应的时间 ms 毫秒数,以 1970 年 1 月 1 日 为基数开始时间,ms 可以为负数。

  const time = new Date(150000000489); // Thu Oct 03 1974 10:40:00 GMT+0800 (中国标准时间)

拓展:时分秒 new Date('yyyy, month, dd hh:mm:ss') 也可以写成 new Date('yyyy, month, dd, hh, mm, ss')。

2.对象方法
  • Date.now() 返回自 1970-1-1 00:00:00 至今所经过的毫秒数。

  • Date.parse() 解析一个表示日期的字符串,并返回从 1970-1-1 00:00:00 所经过的毫秒数。

  Date.parse("2003,05,02 00:00:01");

3.实例方法
  • toLocaleString() 格式化实例格式。以 2023/5/28 23:07:35(日期+时间) 形式返回。

  • toLocaleDateString() 格式化实例格式。以 2023/5/28(日期) 形式返回。

  • toLocaleTimeString() 格式化实例格式。以 23:07:35(时间) 形式返回。

  • getDate() 返回实例的日期。

  • getDay() 返回实例是周几。

  • getFullYear() 返回实例的年份。

  • getMonth() 返回实例的月份,因为从 0 开始,所以返回的数比月份小 1。

  • getHours() 返回实例的小时数。

  • getMinutes() 返回实例的分钟数。

  • getSeconds() 返回实例的秒数。

  • getMilliseconds() 返回实例的毫秒数。

  • getTime() 返回一个数值,表示从 1970 年 1 月 1 日 0 时 0 分 0 秒距离该 Date 对象所代表时间的毫秒数。(更早的时间会用负数表示)

  • setFullYear() 设置实例的年份。

  • setMonth() 设置实例的月份,0 ~ 11。

  • setDate() 设置实例的日期。

  • setHours() 设置实例的小时数。

  • setMinutes() 设置实例的分钟数。

  • setSeconds() 设置实例的秒数。

  • setMilliseconds() 设置实例的毫秒数。

4.Date对象格式化函数

Date返回的格式不是我们想要的,所以要格式化一下。

    function formaData(timer) {
      let year = timer.getFullYear();
      let month = timer.getMonth() + 1; // 由于月份从0开始,因此需加1
      if (month < 10) month = "0" + month;
      let day = timer.getDate();
      if (day < 10) day = "0" + day;
      let hour = timer.getHours();
      if (hour < 10) hour = "0" + hour;
      let minute = timer.getMinutes();
      if (minute < 10) minute = "0" + minute;
      let second = timer.getSeconds();
      if (second < 10) second = "0" + second;
      return `${year}-${month}-${day} ${hour}:${minute}:${second}`;
    }

  • 12
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值