Javascript:添加数字而没有总和?

我基本上是想在JavaScript中获得一个date的小时,分​​钟和秒钟,像这样读取:'123456'。 我正在用下面的代码做这个:

var date; date = new Date(); var time = date.getUTCHours() + date.getUTCMinutes() + date.getUTCSeconds(); 

唯一的问题是,当我把它们加在一起,我总是得到的总和,不是像我想要的6个数字的好线。

有什么build议么?

 var time = '' + date.getUTCHours() + date.getUTCMinutes() + date.getUTCSeconds(); 

编辑:为了说明零填充,你可以做这样的事情:

 function format(x){ if (x < 10) return '0' + x; return x; } var date; date = new Date(); var time = '' + format(date.getUTCHours()) + format(date.getUTCMinutes()) + format(date.getUTCSeconds()); 

将数值转换为string:

 var date; date = new Date(); var time = date.getUTCHours().toString() + date.getUTCMinutes().toString() + date.getUTCSeconds().toString(); 

如果您希望它始终为6个字符,则需要填充值<10。例如:

 var hours = date.getUTCHours(); if (hours < 10) hours = '0' + hours.toString(); else hours = hours.toString(); var mins = date.getUTCMinutes(); if (mins < 10) mins = '0' + mins.toString(); else mins = mins.toString(); var secs = date.getUTCSeconds(); if (secs < 10) secs = '0' + secs.toString(); else secs = secs.toString(); var time = hours + mins + secs; 

这是因为这些函数返回一个Integertypes。 如果你想添加数字自己togheter,尝试使用toString()将每个variables转换为string