JS-时间对象

12次阅读
没有评论

共计 1532 个字符,预计需要花费 4 分钟才能阅读完成。

实例化

在代码中发现 new 关键字时,一般将这个操作称为实例化

获得当前时间

    let date = new Date()

获得指定时间

    let date = new Date('1999-09-01 18:30:00')

时间对象方法

因为时间对象返回的数据我们不能直接使用,所以需要转换为实际开发中常用的格式

方法名 说明
getFullYear() 获取当年
getMonth() 获取当月(0 ~ 11)
getDate() 获取当天日期
getDay() 获取当星期几(周日 0 到 周六6)
getHours() 获取当前小时
getMinutes() 获取当前分钟
getSeconds() 获取当秒钟
getTime() 获取时间戳
    // 先调用 就省去了1秒的空白期
    getTimer()
    setInterval(getTimer, 1000)
    function getTimer() {
        let date = new Date();
        let year = date.getFullYear(); // 返回当前日期的年
        let month = date.getMonth() + 1; // 返回月份0~11,要加1
        let dates = date.getDate(); // 返回的是当前几号
        let arr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
        let day = date.getDay(); // 返回的是0~6 周日是0
        let h = date.getHours(); // 时
        h = h < 10 ? '0' + h : h; // 数字小于10前面补0
        let m = date.getMinutes(); // 分
        m = m < 10 ? '0' + m : m; // 数字小于10前面补0
        let s = date.getSeconds(); // 秒
        s = s < 10 ? '0' + s : s; // 数字小于10前面补0
        time.innerHTML = `${year}年 ${month}月${dates}日 ${h}时${m}分${s}秒 ${arr[day]}`
    }



    time()
    setInterval(time, 1000)
    function time() {
      // 1. 得到现在的时间戳
      let now = +new Date()
      // 2. 得到指定时间的时间戳
      let last = +new Date('2021-8-29 18:30:00')
      // 3. (计算剩余的毫秒数) / 1000 === 剩余的秒数
      let count = (last - now) / 1000
      // 4. 转换为时分秒
      // h = parseInt(总秒数 / 60 / 60 % 24)   //   计算小时
      let h = parseInt(count / 60 / 60 % 24)
      h = h < 10 ? '0' + h : h
      // m = parseInt(总秒数 / 60 % 60);     //   计算分数
      let m = parseInt(count / 60 % 60)
      m = m < 10 ? '0' + m : m
      // s = parseInt(总秒数 % 60); //   计算当前秒数
      let s = parseInt(count % 60);
      s = s < 10 ? '0' + s : s

      hour.innerHTML = h
      minutes.innerHTML = m
      scond.innerHTML = s
    }

时间戳

时间戳是指1970年01月01日00时00分00秒起至到现在的毫秒数,它是一种特殊的计量时间的方式

获取时间戳

getTime() 方法

     // 实例化
    let date = new Date()
    // 获取时间戳
    console.log(date.getTime())

+new Date() 方法

    // 当前时间戳
    console.log(+new Date())
    // 指定时间的时间戳
    console.log(+new Date('2022-12-12 00:00:00'))

Date.now()

    // 无需实例化,但是只能得到当前时间戳,前面两种可以获得指定时间的时间戳
    console.log(Date.now())

正文完
 0
qiaofugui.cn
版权声明:本站原创文章,由 qiaofugui.cn 于2024-05-20发表,共计1532字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)
验证码