美文网首页
13-第十三章 日期对象Date

13-第十三章 日期对象Date

作者: 晚溪呀 | 来源:发表于2019-02-08 16:10 被阅读0次

    JavaScript 日期处理类库 http://momentjs.cn/

    解决轮播图点击太快的方法

    设置一个旧时间
    点击的瞬间立马拿到一个新的时间,新时间 - 旧时间 如果 小于 动画的时间,那等二次点击不生效,再更新旧时间

            //  旧的时间
            let oldTime = new Date();
            document.onclick = () => {             
                //  限制点击间隔时间,防止点击太快
                if (new Date() - oldTime < 600) {
                    return;
                }
                oldTime = new Date();
            }
    

    倒计时低于10显示0(n)

    const num = n => n < 10 ? '0' + n : n + "";
    

    夏令时 开始 4月中旬第一个星期日,晚上2.00 - 3.00
    结束 9月中旬 第一个星期日晚上 2.00

    一、 new Date() 获取当前时间


    1、 new Date() 本地时间

    里面是字符串时 2018-07-08T20:30:00 月份大于13 无效
    里面是数字时,月份要 - 1 月份大于13 自动进1
    new Data(2018, 6, 1, 21, 35, 00)

    var d = new Date();
    alert(d);  //Wed Aug 23 2017 21:36:24 GMT+0800 (中国标准时间)
    

    2、 toUTCString() 当前 世界时

    toUTCString() 根据世界时,把Date对象转换为字符串。

    var d = new Date();
    var utc =  d.toUTCString()
    alert( utc );//Wed, 23 Aug 2017 13:40:29 GMT
    

    3、获取具体时间

    方法 描述

    getFullYear()
    getMonth() + 1 月(0 ~ 11)。
    getDate() 天 (1 ~ 31)。
    getDay() 周几 (0 ~ 6),星期天为0
    getHours()
    getMinutes()
    getSeconds()
    getMilliseconds() 毫秒
    getTime() 返回 1970 年 1 月 1 日至今的毫秒数
    H5 new Data.now() 返回 1970 年 1 月 1 日至今的毫秒数

    new Date( Date.parse( new Date() ) );
    字符串格式通过 Date.parse() 变成数字,再通过 new Date() 转化为一个对象
    new Date().getTimezoneOffset()
    世界时 - 本地时间 = 相差的毫秒值(分钟)
    new Date().getUTCHours()
    拿到世界时这一刻的小时

        var d = new Date(),
        YY = d.getFullYear(),
        MM = d.getMonth() + 1,
        TT = d.getDate(),
        DD = d.getDay(),
        HH = d.getHours(),
        Min = d.getMinutes(),
        Sec = d.getSeconds(),
        Mil = d.getMilliseconds()
    
        alert(YY);  //2017
    

    二、 日期格式化方法

    date. toLocaleString() ——————–按照本地时间输出 Locale
    /ləʊ'kɑːl/ 区域设置
    date.toLocaleDateString() —————本地时间 年 月 日
    date.toLocaleTimeString() ————–本地时间 时 分 秒
    date.toTimeString()————————本地 时 分 秒 时区
    Date.UTC() ————————————世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数

    var d = Date.UTC(year,month,day,hours,minutes,seconds,ms);
    alert(d);
    

    三、 设置本地时间

    日期对象相减得到的值为毫秒值

    1、new Date(yy,mon,dd,hh,mm,ss,ms) 数字形式
    new Date(yy,mon,dd,hh,mm,ss,ms) 可以缺省,yy,mon为必须
    new Date(2020,10,1)

    2、new Date(‘yy/mon/dd/hh/mm/ss/ms’)字符串形式
    new Date('2020/10/1')

    3、new Date(num ) 毫秒数 到1970年的毫秒数(一个值是获取到的是毫秒值)
    new Date('2020/10/1')

    参数 描述

    yy 年 (四位数)
    mon 月份 ( 0~11))
    dd: 天 ( 1~31 )
    hh 时 ( 0~23)
    mm 分 ( 0~59)
    ss 秒 ( 0~59)
    ms 毫秒 (0 ~ 999)

    var t = new Date(2017,10,15,2,30,05);
    console.log(t);//Wed Nov 15 2017 02:30:05 GMT+0800 (中国标准时间)
    

    案例1:系统时间
    案例2:倒计时

    四、 getTimezoneOffset

    返回本地时间与格林尼治标准时间 (GMT) 的分钟差

    1.var d = new Date();

    3.//拿到毫秒数
    4.var len = d.getTime();

    6.//本地时间与GMT时间的时间差
    7.var offset = d.getTimezoneOffset()601000;

    9.//得到现在的格林尼治
    10.var utcTime = len + offset;

    12.//num时区 得到不同时区的时间
    13.var data = new Date(utcTime+60601000*num);
    案例3:世界时间

    相关文章

      网友评论

          本文标题:13-第十三章 日期对象Date

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