日期对象常用操作:
(日期对象,是系统提供好的)
<script type="text/javascript">
date = new Date; //记录出生时的日期 (new出来后就不会改变 当然刷新页面会改变)
</script>
get方法 获取date
如图所示:使用 getSeconds() 返回 Date 对象的秒数。
以不同时间在控制台上输入 date.getSeconds();结果都一样。
getTime() 时间戳
返回 1970 年 1 月 1 日至今的毫秒数。
//返回循环运行时间间隔
<script type="text/javascript">
var one=new Date().getTime();
for(var i=0;i<100000000;i++){
}
var two = new Date().getTime();
console.log(two-one);
</script>
set方法 设置date
例如:setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。
<script type="text/javascript">
var date=new Date();
date.setMinutes(41); //设置时间41分0秒
date.setSeconds(0);
setInterval(function(){
if (new Date().getTime()-date.getTime()>1000) {
console.log("hello world"); //超过这个时间一直打印
}
},1000); //每间隔1000毫秒执行一次
</script>
toString() 把 Date 对象转换为字符串
定时器 :
- window上的方法 函数内部的this 指向window
- 两种定时器 函数部分都可以用字符串的形式代替(不常用)
例子: setInterval("console.log('hello world');",1000); //打印字符串中包含的这段代码 显示:hello world
setInterval
setInterval(function(){
//time 只识别一次
},time); //每隔time毫秒 执行一次函数 一直执行下去
- setInterval 非常不准确 是window上的方法
- 返回一个数字 作为它的唯一标识
- clearInterval() 清除定时器
<script type="text/javascript">
var i=0;
var time=setInterval(function(){
console.log(i++);
if(i>10){
clearInterval(time); //满足一定的条件 (清除定时器 还会将后面的语句执行完)
}
},1000);
</script>
setTimeout
setTimeout(function(){
},time); //达到time时间 执行一次函数
<script type="text/javascript">
setTimeout(function(){
console.log('time over');
},1000);
</script>
- clearTimeout() 清除定时器 (不会与别的定时器的唯一标识符重复)
一个简单的三分钟计时器:
minutes: <input type="text" value="0" style="border-radius: 30px;width: 20px;text-align:center">
second: <input type="text" value="0" style="border-radius: 30px;width: 20px;text-align: center">
<script type="text/javascript">
var timea=document.getElementsByTagName("input");
var minutes=0,seconds=0;
var time=setInterval(function(){
seconds ++;
if (seconds==60) {
seconds=0;
minutes++;
}
timea[0].value=minutes;
timea[1].value=seconds;
if (minutes===3) {
clearInterval(time);
}
},1000);
</script>
在页面中显示: