日期对象和定时器

一、GMT+0800是中国时间,比标准格林尼治时间快8个小时,1970.1.1 0:00分为格林尼治标准时间
 
二、实例化日期对象---当前时间(电脑上的当前时间)
var date =new Date();
 
三、日期创建的方式
1、无参创建---当前时间
var date =new Date();
2、数字单参 毫秒数
var date =new Date(0);---指向的是1970年8点整
var date =new Date(-3600000);---指向的是1970年7点整
3、数字多参数 月份是从0开始的
var date=new Date(2022,1,1) //1表示2月
var date=new Date(2022,1,1,2,3,4) //2022年2月1日2点3分4秒
var date=new Date(2022,13,33)//2022年3月5日,自动往前推
var date=new Date(2022,13,33,5,5,5,5,5,5,5...)//2022年3月5日5点5分5秒
4、字符串单参---此时月份是正常的
var date=new Date('2022-1-1')
var date=new Date('2022/1/1')
var date=new Date('2022*1*1')
var date=new Date('2022*1*1 5:5:5')时分秒传参时,加空格,时分秒之间只能是冒号
var date=new Date('2022-13-1')//Invalid date,不合法的时间
 
四、方法
1、getFullYear() 拿到当前时间的年份
2、getMonth() 拿到当前月份-1
3、getDate() 拿到日期
4、getDay() 拿到星期几
5、getHours() 拿到小时
6、getMinutes() 拿到分钟
7、getSeconds() 拿到秒数
8、getTime() 1970年1月1日至今的毫秒数,时间戳
9、getUTC... 格林尼治的时间
 
五、格式化时间
function dateFormat(time) {
var date = new Date(time);
var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
var hour = date.getHours();
var minute = date.getMinutes();
var second = date.getSeconds();
return year + '-' + month + '-' + day + ' ' + hour + ':' + minute + ':' + second } //var date = dateFormat('2020-12-3'); 数字传参会报错
var date = dateFormat(new Date()); document.write(date);
 
六、修改设置日期:直接修改了日期
1、setFullYear() 修改年份
2、setMonth() 修改月份
3、setDate() 修改日期
setDate(0) 回到上个月的最后一天
4、setHours() 修改时
5、setMinutes() 修改分钟
6、setSeconds() 修改秒
 
七、返回值是在页面中的第几个
1、定时器 setInterval 每隔一段时间执行一次
setInterval(function(){
要做的事情},time)
setInterval(function(){
document.write('<p>666</p>')
},1000)
var t=setInterval(function(){
document.write('<p>666</p>')
},1000)
console.log(t) //t=1,页面当中的第几个定时器
2、延时器 setTimeout 一段时间以后只执行一次
setTimeout(function(){
document.write('<p>666</p>')
},1000)
var t1=setTimeout(function(){
document.write('<p>666</p>')
},1000) console.log(t1) //t1=2,定时器和延时器不作区分
3、异步和同步
1)先烧水、后泡茶、有先后顺序,叫同步
2)一边走路一边吃饭 没有先后顺序,叫异步
事件、延时器、定时器是异步程序
4、js里面大多数是同步任务,只有少量的异步任务(定时器、事件、ajax...)
5、js是单线程语言
1)单线程 一次只能做一件事情
2)多线程 同时做很多事情
6、js的任务队列 ---js的执行顺序
1)先找到所有的同步任务 顺序执行
2)遇到异步任务的时候 放在任务队列
3)所有同步任务结束以后,看任务队列中那个任务到事件了,或者被触发了,执行
7、清除定时器
1)clearInterval 可以清除定时器,也可以清除延时器
2)clearTimeout 可以清除延时器,也可以清除定时器
var count=0 var timer=setInterval(funciton(){ console.log(666); count++; if(count>=10){ clearInterval(timer) } })
8、用定时器写时间
var t =setInterval(function(){
var date=new Date();
})
 
1)、每一次使用定时器之前,都先清除定时器,不然触发一次定时器,定时器叠加一次
var t;
clearInterval(t);
t=setInterval(function(){
console.log(666);
},1000)
 
2)、
function showAd(){
}
 
 
九、月份
// month 学写月份的英语单词
// Jan uary
// Feb ruary
// Mar ch
// Apr il
// May
// Jun e
// Jul y
// Aug ust
// Sep tember
// Oct ober
// Nov ember
// Dec ember
 
// week 学写星期的英语单词
// Mon day
// Tue sday
// Wed nesday
// Thu rsday
// Fri day
// Sat urday
// Sun day

posted @ 2021-07-01 10:47  睫毛上长雀斑  阅读(299)  评论(0)    收藏  举报