我的最终功能。
var timeToString = function(time)
{
if (time <= 0)
{
return '0';
}
else
{
var s = '';
var d;
var dateObj = { '_86400' : 'วัน', '_3600' : 'ชั่วโมง', '_60' : 'นาที', '_1' : 'วินาที' };
for ( key in dateObj )
{
console.log( time + ' ' + key )
var suffix = dateObj[key];
var totaltime = key;
totaltime = totaltime.substr(1)
if ( time >= totaltime )
{
time -= d = time - time % totaltime;
s += ( ( d / totaltime) + ' ' + suffix + ' ');
}
}
}
return s;
}
document.write( timeToString(79) )
结果:1 นาที 19 วินาที
通过为我的对象的键值添加前缀来修复它,我的修复工作很好。
这是我的第一个代码
var timeToString = function(time)
{
if (time <= 0)
{
return '0';
}
else
{
var s = '';
var d;
var dateObj = { '86400' : 'วัน', '3600' : 'ชั่วโมง', '60' : 'นาที', '1' : 'วินาที' };
for ( key in dateObj )
{
var suffix = dateObj[key];
var totaltime = parseInt(key);
if ( time >= totaltime )
{
time -= d = time - time % totaltime;
s += ( ( d / totaltime) + ' ' + suffix + ' ');
}
}
}
return s;
}
结果:79 วินาที
我不需要那样的显示。
结果:1 นาที 19 วินาที
这是正确的。
看看两个函数之间“dateObj”的区别。
如果键的类型==数字,如何在for循环中修复对象重新排序