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 日至今的毫秒数
H5new 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:世界时间
网友评论