折翼天使I
2016-10-24 16:18
假如现在的时间为16:02:01,用下面的代码写出来的话显示的是:16:2:1,该如何解决显示为:16:02:01?
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>window对象</title> <script type="text/javascript"> var attime; setInterval(clock2,1000);//这里的秒数指的是调用函数的时间间隔,也可理解为刷新时间 function clock2() { var time=new Date(); attime=time.getHours()+":"+time.getMinutes()+":"+time.getSeconds(); document.getElementById("clock").value = attime; } </script> </head> <body> <input type="text" id="clock" size="10"> </body> </html>
function clock2()
{
var time=new Date();
var seconds=time.getSeconds(); //定义个变量保存秒数
if(seconds<10){seconds="0"+seconds} //秒数前加个0
attime=time.getHours()+":"+time.getMinutes()+":"+seconds; //这里别忘了改过来啊
document.getElementById("clock").value = attime;
}
</s
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>window对象</title>
<script type="text/javascript">
var attime;
setInterval(clock2,1000);//这里的秒数指的是调用函数的时间间隔,也可理解为刷新时间
function clock2()
{
var time=new Date();
attime=("0"+time.getHours()).slice(-2)+":"+("0"+time.getMinutes()).slice(-2)+":"+("0"+time.getSeconds()).slice(-2);
document.getElementById("clock").value = attime;
}
</script>
</head>
<body>
<input type="text" id="clock" size="10">
</body>
</html>
time.getHours()变成
("0”+time.getHours()).slice(-2)
/*"0”+time.getHours()这是为了让两位数现实成三位数(0??),让一位数现实成两位数(0?),两位数需要显示(??),一位数需要显示(0?),这表示他们都是显示出从倒数第二位到最后一位,所以输出("0”+time.getHours()).slice(-2)*/
time.getMinutes()
变成
("0”+time.getMinutes()).slice(-2)
time.getSeconds
变成
("0”+time.getSeconds()).slice(-2);
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题