mstf-kit
Version:
一个现代化的 JavaScript/TypeScript 工具库,提供了丰富的常用工具函数
2 lines (1 loc) • 1.49 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),exports.addTime=function(e,t,a){const r=new Date(e);switch(a){case"years":r.setFullYear(r.getFullYear()+t);break;case"months":r.setMonth(r.getMonth()+t);break;case"days":r.setDate(r.getDate()+t);break;case"hours":r.setHours(r.getHours()+t);break;case"minutes":r.setMinutes(r.getMinutes()+t);break;case"seconds":r.setSeconds(r.getSeconds()+t)}return r},exports.formatDate=function(e,t="YYYY-MM-DD HH:mm:ss"){const a=new Date(e),r=a.getFullYear(),n=String(a.getMonth()+1).padStart(2,"0"),s=String(a.getDate()).padStart(2,"0"),o=String(a.getHours()).padStart(2,"0"),g=String(a.getMinutes()).padStart(2,"0"),c=String(a.getSeconds()).padStart(2,"0");return t.replace("YYYY",String(r)).replace("MM",n).replace("DD",s).replace("HH",o).replace("mm",g).replace("ss",c)},exports.getDateRange=function(e,t){const a=[],r=new Date(e),n=new Date(t);let s=r;for(;s<=n;)a.push(new Date(s)),s.setDate(s.getDate()+1);return a},exports.getRelativeTime=function(e,t=new Date){const a=new Date(e),r=t.getTime()-a.getTime(),n=Math.floor(r/1e3),s=Math.floor(n/60),o=Math.floor(s/60),g=Math.floor(o/24),c=Math.floor(g/30),l=Math.floor(c/12);return l>0?`${l}年前`:c>0?`${c}个月前`:g>0?`${g}天前`:o>0?`${o}小时前`:s>0?`${s}分钟前`:n>0?`${n}秒前`:"刚刚"},exports.isSameDay=function(e,t){const a=new Date(e),r=new Date(t);return a.getFullYear()===r.getFullYear()&&a.getMonth()===r.getMonth()&&a.getDate()===r.getDate()};