js将毫秒转化为天、时、分、秒
描述
对时间进行操作是我们在项目中随时都会遇见的,本篇内容中所带来的函数就是讲解在js中如何将毫秒转化为我们可直接阅读的时间。
代码
function formatDuration(ms){ if (ms < 0) ms = -ms; var time = { day: Math.floor(ms / 86400000), hour: Math.floor(ms / 3600000) % 24, minute: Math.floor(ms / 60000) % 60, second: Math.floor(ms / 1000) % 60, millisecond: Math.floor(ms) % 1000 }; return Object.entries(time) .filter(val => val[1] !== 0) .map(([key, val]) => `${val} ${key}${val !== 1 ? 's' : ''}`) .join(', '); }
使用
console.log(formatDuration(1001)) // '1 分, 1 秒' console.log(formatDuration(34325055574)); // '397 天, 6 小时, 44 分, 15 秒, 574 毫秒'