Javascript:Math.floor未按预期工作 函数时间转换(num){ 对于(i=0;i
当我调用Javascript:Math.floor未按预期工作 函数时间转换(num){ 对于(i=0;i,javascript,Javascript,当我调用TimeConvert(60)时,它返回0:0,而不是1:0。。。为什么?在这种情况下,我是否必须添加一个条件来检查num%60==0?问题在于I
TimeConvert(60)
时,它返回0:0
,而不是1:0
。。。为什么?在这种情况下,我是否必须添加一个条件来检查num%60==0
?问题在于I
应该是I为什么需要迭代
function TimeConvert(num) {
var hours = Math.floor(num / 60);
var minutes = num % 60;
return hours + ":" + minutes;
}
函数时间转换(num){
var小时数=数学楼层数(num/60);
var分钟数=num%60;
//分钟=分钟<10?'0'+分钟:分钟
返回时间+“:”+分钟;
}
您是否尝试使用调试器跟踪代码?num%60<60
始终满足以下条件:如果num
是数字且已完成是的,当我调用TimeConvert(126)时它会工作,例如,它返回2:6。但是,当我调用TimeConvert(120)时,它返回1:0而不是2:0。跟踪其错误行为的值您的条件小于num;尝试将其设置为IIUC,OP不希望将分钟格式化为两位数number@JanDvorak-那就把那条线移开!这非常有效,谢谢!你是对的,我必须停止一直用迭代的方式思考。
function TimeConvert(num) {
var hours = Math.floor(num / 60);
var minutes = num % 60;
return hours + ":" + minutes;
}
function TimeConvert(num) {
var hours = Math.floor( num / 60 );
var minutes = num % 60;
//minutes = minutes < 10 ? '0'+minutes:minutes
return hours + ":" + minutes;
}