目录
前言
本篇笔记重点介绍Math类,Dtae类创建与使用,以及定时器的应用
一、Math
Math类型不可以创建对象的
所有的属性和方法都是通过类名直接调用的
1.Math.floor:向下取整
2.Math.ceil:向上取整
3.Math.round:四舍五入取整
4.Math.sqrt:开方
5.Math.pow(m,n):返回m的n次方
6.Math.min(1,-2,3,4):返回较小值
7.Math.max(1,-2,3,4):返回较大值
8.Math.abs:返回绝对值
9.Math.random:返回0-1的随机数
二、生成一个区段的随机数
function randNum(min,max){
var rand=Math.round((Math.random()*(max-min)+min));
return rand;
}
三、做一个彩虹条:
// 1,生成随机颜色
// var color='#'
// var str='123456789abcdef';
// for(var i=0;i<6;i++){
// color+=str.charAt(randNum(0,15))
// }
// document.write(color)
// 2.将生成的颜色赋给某个li
// var oLi=document.getElementById("")
// oLi.style.backgroundColor=color;
// 注意:通过js对象.属性值的方式操作html元素
// 所有css单词拼接的书写形式,在js中全部改为把-去掉,后面单词首字母大写
// 3.批量获取元素
// document.getElementsByTagName('标签名'):返回标签名所对应的数组。(将html里所有这个元素获取,且按照从上到下的顺序组成数组)
// var oLi=document.getElementsByTagName("li");
四、 Date
属性
// var date = new Date();获取当前日期
// console.log(date);
// getFullYear获取年
// console.log(date.getFullYear());
// //getMonth 0~11获取月
// console.log(date.getMonth());
// //getDate获取天
// console.log(date.getDate());
// //getDay 0~6获取星期
// console.log(date.getDay());
// //getHours获取小时
// console.log(date.getHours());
// //getMinutes获取分
// console.log(date.getMinutes());
// //getSeconds或许秒
// console.log(date.getSeconds());
获取时间
var date = new Date();
function dateToString(d){
var _y = d.getFullYear();
var _m = toTwo(d.getMonth()+1);
var _d = toTwo(d.getDate());
var _h = d.getHours();
var _mm = d.getMinutes();
var _s = toTwo(d.getSeconds());
var _w = d.getDay();
var week = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
var str = _y+"年"+_m+"月"+_d+"日 "+_h+":"+_mm+":"+_s+" "+week[_w];
return str;
}
指定时间宽度,即让时间为两位数和一位数宽度一样,让一位时间变为0+时间
function toTwo(v){
return v<10?"0"+v:v;
}
console.log(dateToString(date));
//按照本地日期格式输出函数
console.log(date.toLocaleString());
标准日期格式
//var date = new Date(标准日期格式字符串);
//标准日期格式字符串:"YYYY-MM-DD,HH:mm:ss"
//var date = new Date("2021-09-08,11:18:22");
//console.log(date.toLocaleString());
时间戳
//时间戳:某个日期对象距离1970年1月1日0:0:0相差的毫秒数
//Date.parse(日期格式字符串):返回参数距离1970年1月1日相差的毫秒数
//var x = Date.parse("2021-09-08,11:18:22");
//console.log(x);
设置日期
var date=new Date();
//date.setHours(12);
date.setHours(date.getHours()+5);
date.setHours(date.getDate()+5);
//日期对象与数字相加时,为左操作的单位。比如小时后面加几小时。
计算两个时间差
var date1=new Date();
var date2=new Date("1941-03-25");
Math.round(date1-date2)/1000/60/60/24));计算出今天距离1941-03-25的天数
循环定时器
setInterval(回调函数,时间间隔):返回值为关闭定时器的钥匙
clearInterval(定时器钥匙)
var count=0;
var time=setInterval(function(){
console.log(count++);
if(count==5){
clearInterval(time);
}
},1000);
延时定时器
setTimeout(回调函数,时间间隔):返回值为关闭定时器的钥匙
setTimeout(function(){
console.log("boom!");
},3000);
1000ms=1s
这里的时间单位都是ms,最小为50
电子时钟
<body>
<input type="text" value="电子时钟" id="time"/>
</body>
<script>
setInterval((function){
var date=new Date();
var oInput=document.getElementbyId("time");获取html元素
oInput.value=date.getHours()+":"+date.getMinutes()+":"+date.getSeconds();
},1000);//一秒获取一次
</script>