UNPKG

ascor

Version:

一些常用的简单的js工具

45 lines (44 loc) 1.42 kB
import { isNumber, isString, isEmpty } from "../is/index"; /** * 时间格式化 * @param {Date | Number} date 时间对象,如new Date(),new Date('2019/05/05 08:08:08') 或时间戳 如:1596507000 * @param {String} fmt 格式,如”YYYY-mm-dd HH:MM:SS“ * @return 返回格式化的字符串 */ export var dateFormat = function (date, fmt) { if (date === void 0) { date = new Date(); } if (fmt === void 0) { fmt = "YYYY-mm-dd HH:MM"; } if (isNumber(date)) { date = new Date(date); } if (isString(date)) { if (!isNaN(date)) { date = new Date(Number(date)); } else { date = new Date(date.replace(/\-+/g, "/")); } } if (!(date instanceof Date) || isNaN(date.getTime())) { return date; } if (isEmpty(fmt)) { return date; } var opt = { "Y+": date.getFullYear().toString(), "y+": date.getFullYear().toString(), "m+": (date.getMonth() + 1).toString(), "d+": date.getDate().toString(), "H+": date.getHours().toString(), "M+": date.getMinutes().toString(), "S+": date.getSeconds().toString(), }; for (var k in opt) { var ret = new RegExp("(" + k + ")").exec(fmt); if (ret) { fmt = fmt.replace(ret[1], ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0")); } } return fmt; };