ed-frame-vue
Version:
easydata 基础组件
59 lines (54 loc) • 1.43 kB
JavaScript
/**
* 将毫秒,转换成时间字符串。例如说,xx 分钟
*
* @param ms 毫秒
* @returns {string} 字符串
*/
export function getDate(ms) {
const day = Math.floor(ms / (24 * 60 * 60 * 1000));
const hour = Math.floor((ms / (60 * 60 * 1000) - day * 24));
const minute = Math.floor(((ms / (60 * 1000)) - day * 24 * 60 - hour * 60));
const second = Math.floor((ms / 1000 - day * 24 * 60 * 60 - hour * 60 * 60 - minute * 60));
if (day > 0) {
return day + "天" + hour + "小时" + minute + "分钟";
}
if (hour > 0) {
return hour + "小时" + minute + "分钟";
}
if (minute > 0) {
return minute + "分钟";
}
if (second > 0) {
return second + "秒";
} else {
return 0 + "秒";
}
}
/**
* 格式化时间
* @param date
* @param fmt
* @returns {*}
*/
export function formatDate(date, fmt = 'yyyy-MM-dd hh:mm:ss') {
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
}
let o = {
'M+': date.getMonth() + 1,
'd+': date.getDate(),
'h+': date.getHours(),
'm+': date.getMinutes(),
's+': date.getSeconds()
};
for (let k in o) {
if (new RegExp(`(${k})`).test(fmt)) {
let str = o[k] + '';
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str));
}
}
return fmt;
}
function padLeftZero(str) {
return ('00' + str).substr(str.length);
}