Date,Math以及定时器

一:数学对象Math

特点:不需要定义对象实例,直接通过 Math.方法名 直接调用。

1.1:Math的常见API

  • 向下取整 (取出小于该数的最大整数)—>Math.floor(小数)
Math.floor(4.3);// 4
  • 向上取整 (取出大于该数的最小整数)—>Math.ceil(小数)

    console.log(Math.ceil(4.3)); //5
    
  • 四舍五入——>Math.round(小数)

    console.log(Math.round(4.1));//4
    
  • 开平方根—>Math.sqrt(number)

    console.log(Math.sqrt(8.8));
    
  • 返回m的n次方—>Math.pow(m,n)

    console.log(Math.pow(2,10));
    
  • 取多个数最小值—>Math.min(1,-2,3,4)

    console.log(Math.min(1,-2,3,4));//-2
    
  • 取多个数最大值—>Math.max(1,-2,3,4)

    console.log(Math.max(1,-2,3,4));//4
    
  • 返回绝对值—>Math.abs(number)

    console.log(Math.abs(-10)); //10
    
  • 返回0~1之间的随机数—>Math.random() ——>(不包括0和1)

    【*注意:】获取任意区间之内的随机数

    function rand(min,max){
    //返回的就是6,9之间的任意随机数
    	return Math.round(Math.random()*(max-min)+min);
    }
    rand(6,9

二: 日期对象Date

2·1:定义:

var d = new Date();
​ new出来的时间就是在执行该行代码的时间

2.2:获取时间的方法:

  • 返回年份 —>getFullYear()
  • 返回月份值—>getMonth() 从0开始 0~11
  • 返回日期 —>getDate()
  • 返回星期几—>getDay() 0~6 星期日为0
  • 返回小时数—>getHours()
  • 返回分钟数—>getMinutes()
  • 返回秒数—>getSeconds()
  • 按照当地时间格式打印—>toLocaleString()—>把 Date 对象的日期部分转换为字符串。

2·3:将时间改为字符串

//toLocaleString按照当地时间格式打印
console.log(d.toLocaleString());

2·4: 字符串转日期:

方式一:Date(“时间格式字符串”)
var d = new Date("1997-7-1,15:30:30");
console.log(d);
方式二:使用时间戳、
//Date.parse(日期字符串) 
//返回自1970年1月1日起至参数日期的毫秒数
var d1 = new Date(Date.parse("1997-7-1,15:30:30"));
console.log(d1);

2·5:设置时间

  • 改变年份 —>setYear()
  • 改变月份—>setMonth() 从0开始 0~11
  • 改变Date对象的日期—>setDate()
  • 改变小时数—>setHours()
  • 改变分钟数—>getMinutes()
  • 改变秒数—>setSeconds()
  • 改变完整的时间,毫秒数—>setTime()

2·6:求日期差

1,先取得两个日期的时间戳
2,计算时间戳之间的差值
3,将时间戳之间的差值算成天

 var d1 = new Date();
 var d2 = new Date("1988-6-26");
 var x = d1.getTime() - d2.getTime();//毫秒
 document.write(x/1000/60/60/24);

三:定时器

3·1:循环定时器

setInterval(函数,执行的间隔/毫秒);

连续执行

3·1·1:循环定时器的定义方法
方法1:【常用】
setInterval(function(){
    console.log(1);
},1000);
方法2:都无
function fun(){
        console.log(1);
    }
 setInterval(fun,1000);
方法3:都有
 function fun(){
        console.log(1);
    }
 setInterval("fun()",1000);

【注意】在函数调用的时候,一般来说,“都有”(有双引号有括号),或者"都无"(无双引号无括号)

3·1·2:循环定时器的停止

clearInterval(定时器对象);

	var time = setInterval(function(){
		count++;
 		console.log(count);
 		if(count == 5){
            //clearInterval(定时器的钥匙)
 			clearInterval(time);
 		}
 	},1000);

3·2:延时定时器

setTimeout(回调函数,毫秒数);

设置在指定的毫秒数后执行一次回调函数,返回定时器编号

体现的是延迟完成一件事情。

3·2,1:延时定时的定义
setTimeout(function(){
      document.write("hello lao wang");
    },5000)
3·2,2:清除延时定时

clearTimeout(定时器对象);

var t = setTimeout(function(){
        document.write("hello lao wang");
    },5000);

clearTimeout(t);  

四:动态时间

<p id="time">时间</p> 
var p = document.getElementById("time");  
setInterval(function(){
    p.innerHTML = new Date();
},1000);

rite(“hello lao wang”);
},5000);

clearTimeout(t);


## 四:动态时间

```js
<p id="time">时间</p> 
var p = document.getElementById("time");  
setInterval(function(){
    p.innerHTML = new Date();
},1000);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值