Date对象
JS内置了核心对象Date,该对象存储的日期为自 1970 年 1 月 1 日 00:00:00 以来的毫秒数,并且提供了一系列处理时间与日期方法
创建Date对象
var d = new Date();
创建当前日期和时间的Date对象
var d = new Date(milliseconds);
以1970-1-1 00:00:00 GMT+0000为基准,按经过的毫秒数创建日期
var d = new Date(yy,mm,[dd],[hh],[mm],[ss],[ms]);
除年,月外,其他参数可选,不输入则默认为0
月份参数从0开始,即0对应1月
var d = new Date(dateString);
以日期字符串为参数进行创建,会自动解析日期字符串
- 支持各种日期格式
- 时间可选,默认为0
- 时间格式固定,使用冒号隔开
例:
“2000-1-1”
“2000/1/1”
“2000 1 1”
“2000 Jan 1”
“2000-1-1 23:59”
“2000-1-1 23:59:59”
“2000-1-1 23:59:59:999
Date对象常用方法
补充:
使用innerHTML修改元素内容
<p id="time"></p>
<script>
document.getElementById(“time”).innerHTML="";
</script>
定时器函数
setTimeout()
setTimeout()用于在指定的毫秒数后调用函数或计算表达式
setTimeout(“调用的函数名称或表达式”,等待的毫秒数)
有以下两种方式
- 调用函数(不加引号)
setTimeout(hello, 3000)
//仅填写函数名,不能加(),否则会立即执行
function hello() {
alert("hello");
}
- 调用表达式(加引号)
setTimeout("alert('hello')", 3000)
setTimeout()实现周期执行
setTimeout()调用自身所在函数可实现周期执行的效果
function timer(){
console.log("1");
setTimeout(timer,1000)
}
timer();
setInterval()
setInterval()可按照指定的周期(毫秒)来调用函数或计算表达式
setInterval(“调用的函数名称或表达式”,等待的毫秒数)
<p id="text"></p>
<script>
var num = 0;
setInterval(timer, 1000)
function timer() {
num++;
document.getElementById("text").innerHTML = num;
}
</script>
清除定时器
clearInterval()、clearTimeout()可以清除定时器
setTimeout()产生的定时器会在执行后自动清除
setInterval()产生的定时器不会自动清除,所以要它停下需要手动清除
<p id="text"></p>
<input type="button" name="stop" id="stop" value="stop" onclick="stop()" />
<script>
var num = 0;
var timer = setInterval(timer, 1000)
function timer() {
num++;
document.getElementById("text").innerHTML = num;
}
function stop(){
clearInterval(timer);
}
</script>