js将毫秒数转化为天数:JavaScript日期格式化

js将毫秒数转化为天数:JavaScript日期格式化(1)

返回给定毫秒数的可读格式

思路
  • ms除以适当的值,以获得dayhourminute的值;
  • Object.entries() Array.prototype.filter()配合使用以仅保留非零值;
  • 使用Array.prototype.map()为每个值创建字符串,并适当地进行复数化;
  • 使用String.prototype.join(' ')将值组合成字符串。
实现代码

const formatDuration = ( ms ) => { if(ms < 0) ms = -ms; let time = { day: Math.floor(ms / 86400000), hour: Math.floor(ms / 3600000) % 24, minute: Math.floor(ms / 60000) % 60 } return Object.entries(time) .filter(val => val[1] !== 0) .map(([key, val])=>{ if(key === 'day') return `${val}天` if(key === 'hour') return `${val}时` if(key === 'minute') return `${val}分` }) .join(' '); }

测试代码

let t1 = formatDuration(62341001); console.log(t1); let t2 = formatDuration(34325055574); console.log(t2);

测试结果

17时 19分 397天 6时 44分

代码实现参阅:formatDuration - 30 seconds of code

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页