对象是JavaScript的特性之一,它是一种非常重要的数据类型,是自我包含的数据集合。这里介绍两个使用的具体对象Date和Math
- Date对象获取时间细节方法:
对象 | 作用 |
---|---|
getDate() | 从Date 对象返回一个月中的某一天(1 ~ 31) |
getDay() | 从Date 对象返回一周中的某一天(0 ~ 6) |
getMonth() | 从Date 对象返回月份(0 ~ 11) |
getFullYear() | 从Date 对象以四位数字返回年份 |
getHours() | 返回 Date 对象的小时(0 ~ 23) |
getMinutes() | 返回 Date对象的分钟(0 ~ 59) |
getSeconds() | 返回Date 对象的秒数(0~59) |
getTime() | 返回 1970 年 1 月 1 日至今的毫秒数 |
一个小案例:
<script>
//js中如何获取当前日期的年月日星期?写出代码
/*首先通过new Date()即可得到当前日期对应的一些字符串,但是字符串很多时候并不是我们想要的类型,所以可以通过getFullYear getMonth getDate来获取年月日
注意getMonth的时候记得加1,因为获取的月份是从0开始的*/
//获取时间
var tempDate=new Date();
var year=tempDate.getFullYear();
var month=tempDate.getMonth()+1;
var date=tempDate.getDate();
var day=tempDate.getDay();
switch(day){
case 0:
day="星期日";
break;
case 1:
day="星期一";
break;
case 2:
day="星期二";
break;
case 3:
day="星期三";
break;
case 4:
day="星期四";
break;
case 5:
day="星期五";
break;
case 6:
day="星期六";
break;
default:
day="错误日期";
break;
}
document.write("今天是"+year+"年"+month+"月"+date+"日,"+day)
</script>
- Date对象设置时间的方法:
方法 | 作用 |
---|---|
setDate() | 设置 Date 对象中月的某一天 (1~31) |
setMonth() | 设置Date 对象中的月份(0~11) |
setFullYear() | 设置Date 对象中的年份(四位数字) |
setHours() | 设置Date 对象中的小时(0~23) |
setMinutes() | 设置Date 对象中的分钟(0~59) |
setSeconds() | 设置Date 对象中的秒钟(0~59) |
setMilliseconds() | 设置Date 对象中的毫秒(0~999) |
创建时间的一个小案例:
<script>
//获取时间
var tempDate=new Date();
//创建时间只需要加上这三行代码就行了
tempDate.setFullYear(2021)
tempDate.setMonth(10);
tempDate.setDate(25)
var year=tempDate.getFullYear();
var month=tempDate.getMonth()+1;
var date=tempDate.getDate();
var day=tempDate.getDay();
switch(day){
case 0:
day="星期日";
break;
case 1:
day="星期一";
break;
case 2:
day="星期二";
break;
case 3:
day="星期三";
break;
case 4:
day="星期四";
break;
case 5:
day="星期五";
break;
case 6:
day="星期六";
break;
default:
day="错误日期";
break;
}
document.write("今天是"+year+"年"+month+"月"+date+"日,"+day)
</script>
补充:
获取本地各种时间的一个小例子:
<script>
var d1=new Date();
document.write(d1.toString()+"<br>");
var d2=new Date("2020-09-09 12:12:10");
document.write(d2.toString()+"<br>");
var d3=new Date("2009,08,09");
document.write(d3.toString()+"<br>");
</script>
注意:此处和php时间不一样,php需要转换成本地时间,但JavaScript直接打印出来的就是本地时间
- Math对象的常用方法:
方法 | 作用 |
---|---|
abs(x) | 返回数的绝对值 |
ceil(x) | 对数进行上舍去 |
floor(x) | 对数进行下舍去 |
max(x,y) | 返回 x 和 y 中的最高值 |
min(x,y) | 返回 x 和 y 中的最低值 |
pow(x,u) | 返回x的y次幂 |
random() | 返回 0 ~ 1 之间的随机数 |
round(x) | 把数四舍五入为最接近的整数 |
sqrt(x) | 返回数的平方根 |
编写几个小案例,以供大家更好理解
<script>
//abs()绝对值
document.write(Math.abs(7.25) + "<br />")
document.write(Math.abs(-7.25) + "<br />")
document.write(Math.abs(7.25-10)+"<br/>")
//ceil()上取舍
document.write(Math.ceil(0.60) + "<br />")
document.write(Math.ceil(0.40) + "<br />")
document.write(Math.ceil(5.1) + "<br />")
document.write(Math.ceil(-5.1) + "<br />")
//floor()下取舍
document.write(Math.floor(0.60) + "<br />")
document.write(Math.floor(5.1) + "<br />")
document.write(Math.floor(-5.1) + "<br />")
//max()最高值
document.write(Math.max(12,2)+"<br />")
//min()最低值
document.write(Math.min(15,5)+"<br />")
//pow()x的y次幂
document.write(Math.pow(5,2)+"<br />")
//random()随机数
document.write(Math.random()+"<br />")
//round()四舍五入的整数
document.write(Math.round(12.45)+"<br/>")
document.write(Math.round(12.56)+"<br/>")
//sqrt()返回数的平方根
document.write(Math.sqrt(25)+"<br>")
</script>
效果展示: