美文网首页
JS 时间处理new Date()

JS 时间处理new Date()

作者: Dannn_Y | 来源:发表于2017-06-27 18:26 被阅读689次

    这两天有个需求就是,处理日期,时间

    new Date()

    • 在浏览器控制台中,直接输入new Date() 会返回当前时区的当前时间。在中国是东八区,以GMT时间为基准,相差八个小时。
    new Date()   
    // Sat Jun 17 2017 14:23:59 GMT+0800 (CST)
    
    • 如果给new Date()传入指定的参数,比如传入一个UTC时间,返回来的也是当前时区的当前时间,或者传一个当前的时间。2017-02-22
    new Date('2017-02-22T13:00:56.000Z')
    // Wed Feb 22 2017 21:00:56 GMT+0800 (CST)
    new Date('2017-02-22') // 如果把T后面的部分去掉也没有时间,默认时间是UTC时间的零点,转换到我们时区的时间就是八点
    // Wed Feb 22 2017 08:00:00 GMT+0800 (CST)
    new Date().getTime()   // 打印出来的是当前时间相距1970年1月1日的时间戳,单位是毫秒,计算的时候别忘了换算单位
    // 1498558976824   
    

    格式化日期

    • 当然我们不能用new Date()直接返回来的时间格式,一般我们用的时间都是经过格式化的,处理成我们想要的时间格式。下面就以 2017年3月2日的这个格式举个栗子。
    let date = new Date() // 这样直接获取的是当前时间,如果传参就是想要修改的日期格式的参数
    let month = date.getMonth() + 1
    let year = date.getFullYear()
    let day = date.getDate()
    let hours = date.getHours()
    let mints = date.getMinutes()
    let seconds = date. getSeconds()
    let millise = date. getMilliseconds()
    return year + '年' + month + '月' + day + '日 ' + hours + ':' + mints + ':' + seconds + '.' + millise
    

    JS按照指定日期加、减,多少天、多少月、多少年的日期, 根据加、减number传入相应的正负

    CaculateDate (dateType, number, date) { // date 是用new Date()包裹的对象
         switch (dateType) {
              case 'y':
                date.setFullYear(date.getFullYear() + number)
                return date
              case 'm':
                date.setMonth(date.getMonth() + number)
                return date
              case 'd':
                date.setDate(date.getDate() + number)
                return date
              default:
                break
          }
    }
    

    相关文章

      网友评论

          本文标题:JS 时间处理new Date()

          本文链接:https://www.haomeiwen.com/subject/hpavqxtx.html