我创建了一个时钟放在我的网站的标题中.时间不会显示零分钟<10.例如,如果时间是10:50,它将只显示10:5,我找到了解决方案但不确定如何实现它.如果有更好的方法请分享.
 var current;
window.onload = function () {
    current = new Date();
    document.getElementById("clock").innerHTML = current.getHours() + ":" +      current.getMinutes(); 
这就是我需要的
                if (minutes < 10)
                minutes = "0" + minutes
这是我时钟的容器
    <span id="clock"> </span>
所以我写了一个方法,它取一个数字并减去当前日期的月数.
我试图找出如何在少于10的月份之前添加"0".另外,如何在小于10的日子前面添加"0".
目前,它返回对象时(2012-6-9).它返回6和9,前面没有'0',有人可以告诉我该怎么做吗?
这是我的代码
lastNmonths = function(n) {
    var date = new Date();
    if (n <= 0)
        return [date.getFullYear(), date.getMonth() + 1 , date.getDate()].join('-');
    var years = Math.floor(n/12); 
   var months = n % 12;
    if (years > 0)
        date.setFullYear(date.getFullYear() - years);
    if (months > 0) {
        if (months >= date.getMonth()) {
            date.setFullYear(date.getFullYear()-1 );
            months = 12 - months; 
            date.setMonth(date.getMonth() + months );
        } else {
            date.setMonth(date.getMonth() - months);
        }
    }
}
    return [date.getFullYear(), date.getMonth() + 1, date.getDate()].join('-');
};
当您将小数字转换为十六进制表示形式时,您需要前导零,因为toString(16)将返回f,15而不是00000f。通常我会使用这样的循环:
var s = X.toString(16); while (s.length < 6) s = '0' + s
JavaScript 有更好的方法吗?
UPD:答案建议的答案如何使用 JavaScript 创建 Zerofilled 值?不是我正在寻找的,我正在寻找一个非常短的代码,它专门适用于将 24 位整数转换为十六进制字符串。
可能重复:
Javascript添加前导零到目前为止
这可能是一个简单的问题,因为我仍然是JavaScript的新手,假设我有ISO格式的DateTime:
 2012-07-07T17:00:00
我想将此日期格式化为字符串:
 07.07.2012
我已经编写了一个格式化为7.7.2012的函数,如下所示:
var formatDate = function (datum) {
    var date = new Date(datum);
    return date.getDate() + '.' + (date.getMonth() + 1) + '.' + date.getFullYear();
};
如何修改此代码以获取结果07.07.2012而不是7.7.2012
我有一个工作计时器,每秒返回一个值
<?php
$timer = "10:00";
?>
<input type="text" value="<?php echo $timer; ?>" id="timer"/>
<script>
$('.ok').click(function() {
  setInterval(function(){
  var timer=$('#timer').val();
  var time = timer.split(":");
  var timer = (parseInt(time[0])*60) + parseInt(time[1]);
  var remaining= (timer)-1;
  var minutes = parseInt( remaining / 60 ) % 60;
  var seconds = remaining % 60;
  $('#timer').val(minutes+":"+seconds);
}, 1000);
 });
</script>
我希望输出显示mm:ss.比如输出是9分1秒,我希望它看起来像09:01而不是9:1
这是尝试过的:
部分伪代码:
var hours = date1.getHours();
var minutes = date2.getMinutes();
if (hours.length == 1)
    hours = "0" + hours;
if (minutes.length == 1)
    minutes = "0" + minutes;
var time = hours + ':' + minutes;
有没有更聪明的方法,比如格式化的字符串函数,我可以说:
var minutes = date.getMinutes('mm');
var hours = date.getHours('hh');
所以它会自动添加零?
预期输出:字符串中的01-2019或02-2019.
我在Angular .ts文件中需要这个.不在HTML视图文件中.