一、获取年、月、日
在JavaScript中,我们可以使用getFullYear()、getMonth()和getDate()方法分别来获取当前时间的年、月、日,如表所示。
方法 | 说明 |
---|---|
getFullYear() | 获取年份,取值为4位数字 |
getMonth() | 获取月份,取值为0(一月)到11(十二月)之间的整数 |
getDate() | 获取日数,取值为1~31之间的整数 |
举例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
var d = new Date();
var myDay = d.getDate();
var myMonth = d.getMonth() + 1;
var myYear = d.getFullYear();
document.write("今天是" + myYear + "年" + myMonth + "月" + myDay + "日");
</script>
</head>
<body>
</body>
</html>
浏览器预览效果如图所示。
分析:
细心的小伙伴会发现,var myMonth = d.getMonth() + 1;使用了“+1”。其实,getMonth()方法返回值是0(一月)到11(十二月)之间的整数,所以必须加上1,这样月份才正确。
此外还要注意,获取当前的“日”,不是使用getDay(),而是使用getDate(),大家要看清楚啦!对于getDay()方法,我们在后面“7.4 获取星期几”这一节会详细介绍,到时可以对比理解一下。
举例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
var d = new Date();
var time = d.getHours();
if (time < 12)
{
document.write("早上好!"); //如果小时数小于12则输出“早上好!”
}
else if (time >= 12 && time < 18)
{
document.write("下午好!"); //如果小时数大于等于12并且小于18,输出“下午好!”
}
else
{
document.write("晚上好!"); //如果上面两个条件都不符合,则输出“晚上好!”
}
</script>
</head>
<body>
</body>
</html>
浏览器预览效果如图所示。
分析:
上面输出结果未必是“早上好”,这个是根据你当前时间来判断的。由于我现在测试的时间是早上8:00,所以会输出“早上好”。如果你是在15:00测试的,就会输出“下午好”,以此类推。
二、设置年、月、日
在JavaScript中,我们可以使用setFullYear()、setMonth()和setDate()方法来设置对象的年、月、日。
1.setFullYear()
setFullYear()可以用来设置年、月、日。
语法:
时间对象.setFullYear(year,month,day);
说明:
year表示年,是必选参数,用一个4位的整数表示,如2017、2020等。
month表示月,是可选参数,用0~11之间的整数表示。其中0表示1月,1表示2月,以此类推。
day表示日,是可选参数,用1~31之间的整数表示。
2.setMonth()
setMonth()可以用来设置月、日。
语法:
时间对象.setMonth(month, day);
说明:
month表示月,是必选参数,用0~11之间的整数表示。其中0表示1月,1表示2月,以此类推。
day表示日,是可选参数,用1~31之间的整数表示。
3.setDate()
setDate()可以用来设置日。
语法:
时间对象.setDate(day);
说明:
day表示日,是必选参数,用1~31之间的整数表示。
举例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
var d = new Date();
d.setFullYear(1992, 09, 01);
document.write("我设置的时间是:<br/>" + d);
</script>
</head>
<body>
</body>
</html>
浏览器预览效果如图所示。
分析:
这里,小伙伴们可得留意了!getFullYear()只能获取年,但setFullYear()却可以同时设置年、月、日。同理,setMonth()和setDate()也有这个特点。