如何让分钟数为一位时显示两位数?

来源:8-3 计时器setInterval()

折翼天使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>


写回答 关注

3回答

  • 慕粉3673019
    2016-10-24 20:27:02
    已采纳

    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


    折翼天使I

    这个方法我知道,不是很想用这个,感觉麻烦,不过谢谢了

    2016-10-24 20:31:41

    共 1 条回复 >

  • qq_补钙雪_0
    2016-10-25 15:01:59

    <!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>


    qq_补钙雪... 回复折翼天使I

    nothing~

    2016-10-25 16:48:31

    共 2 条回复 >

  • qq_补钙雪_0
    2016-10-24 19:00:23


    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);


    Firewo... 回复折翼天使I

    我试了一下 这样的确可以O O你复制下我的代码看看? var attime; function clock(){ var time=new Date(); attime= time.getHours()+':'+time.getMinutes()+':'+('0'+time.getSeconds()).slice(-2) ; document.getElementById("clock").value = attime; } var haha=setInterval(clock,1000);

    2016-10-27 14:24:01

    共 5 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

467393 学习 · 21877 问题

查看课程

相似问题