将毫秒格式化为天、小时、分钟、秒

问题描述:

将毫秒格式化之后,按“天、小时、分钟、秒”展示

如 630170722 处理之后展示为“7天7小时2分50秒”

 

解决方案:

/**
 * 将毫秒格式化为天、时、分、秒
 * @param {Number} t 毫秒
 */
export const formatDuring = (t) => {
  const HOUR = 1000 * 60 * 60;
  const d = parseInt(t / (HOUR * 24));
  const h = parseInt((t % (HOUR * 24)) / (HOUR));
  const m = parseInt((t % (HOUR)) / (1000 * 60));
  const s = parseInt((t % (1000 * 60)) / 1000);

  let text = '';
  d && (text += `${d}天`);
  h && (text += `${h}小时`);
  m && (text += `${m}分`);
  s && (text += `${s}秒`);
  return text || '-';
};

// let start = new Date('2019-12-31 10:33')
// let end = new Date('2019-12-31 18:10')
// formatDuring(end - start) --> "7小时37分"

 

猜你喜欢

转载自www.cnblogs.com/wisewrong/p/12125454.html