UNPKG

hwplugins

Version:

二次封装扩展随机数、手机号码/身份证号码脱敏、时间格式化等...

47 lines (46 loc) 1.29 kB
function format(time, cFormat) { if (arguments.length === 0) return null; const format = cFormat || "yyyy-MM-dd hh:mm:ss"; let date; if (typeof time === "object") { date = time; } else { if (typeof time === "string") { if (/^[0-9]+$/.test(time)) time = parseInt(time); else return new Date(time); } if (typeof time === "number" && time.toString().length === 10) { time = time * 1000; } date = new Date(time); } var weeks = new Array("周日", "周一", "周二", "周三", "周四", "周五", "周六"); var o = { "M+": date.getMonth() + 1, "d+": date.getDate(), "h+": date.getHours(), "m+": date.getMinutes(), "s+": date.getSeconds(), "q+": Math.floor((date.getMonth() + 3) / 3), "a+": weeks[date.getDay()], }; let fmt = format; if (/(y+)/.test(fmt)) fmt = fmt.replace( RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length) ); for (var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace( RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length) ); return fmt; } module.exports = function GetDate(time, patten) { if (!time) { time = new Date(); } return format(time, patten); };