在 JavaScript 时钟中的单个字符之前添加填充 0

Add padding 0 before single character in javascript clock

本文关键字:添加 填充 字符 单个 JavaScript 时钟      更新时间:2023-09-26
<script type="text/jscript">
function clock(){ 
  var d = new Date(); 
  var h = d.getHours(); 
  var m = d.getMinutes(); 
  var s = d.getSeconds(); 
  $('#clock').html(", "+h+"<span class='colon'>:</span>"+m+"<span class='colon'>:</span>"+s); 
//  $('.colon').fadeTo(1000, .2); 
  setTimeout(clock, 1000); 
} 

上面是 javascript ,我曾经在 Webapplication.it 上显示时钟,工作正常,但现在我希望 对于任何一位数值,该值应在实际值之前填充 0。例如12:15:05,12:15:15,12:05:10,02:05:09

目前它显示如下:-12:15:5,12:15:15,12:5:10,2:5:9

任何帮助或建议,我如何实现这一目标。

做一个小的辅助函数并调用它:

function pad(n)
{
  return (pad < 10 ? '0' : '') + n;
}

试试这个

var d = new Date();
var h = d.getHours();
var m = d.getMinutes();
var s = d.getSeconds();
    if (parseInt(h) < 10)
       h = "0" + h;
    if (parseInt(m) < 10)
       m = "0" + m;
    if (parseInt(s) < 10)
       s = "0" + s;
$('#clock').html(", " + 
       h + "<span class='colon'>:</span>" + 
       m + "<span class='colon'>:</span>" + 
       s);
setTimeout(clock, 1000);

只需在这些h, m and s上添加条件检查

一个简单的

"如果小于10"条件应该可以。

if(value<10){
    //it must be 1 digit
}

你可以尝试这样的东西,

var d = new Date(); 
var h = d.getHours(); 
h = h+''; // it will give string
if(h.length == 1) { 
h = "0"+h
}