UNPKG

zarm-web

Version:
96 lines (81 loc) 2.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; /* eslint-disable */ var _default = { // 格式化日期 date: function date(_date, fmt) { if (!_date || !fmt) { return _date; } // 判断是否为 Date 对象 if (!(Object.prototype.toString.call(_date) === '[object Date]')) { _date = new Date(_date.toString().replace(/-/g, '/')); } 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), // 季度 S: _date.getMilliseconds() // 毫秒 }; if (/(y+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, "".concat(_date.getFullYear()).substr(4 - RegExp.$1.length)); } for (var k in o) { if (new RegExp("(".concat(k, ")")).test(fmt)) { fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? o[k] : "00".concat(o[k]).substr("".concat(o[k]).length)); } } return fmt; }, // 验证日期格式 validate: function validate(date, fmt) { if (!date || !fmt) { return false; } var sep = /-/.test(fmt) ? '-' : '/'; fmt = fmt.replace(/[yMdhms]/g, '\\d').replace(/(-|\/)/g, "\\".concat(sep)); return new RegExp("^".concat(fmt, "$")).test(date); }, // 将数字转成日期格式 transform: function transform(num, fmt) { var sep = /-/.test(fmt) ? '-' : '/'; fmt = fmt.replace(/-|\//g, ''); if (num.length !== fmt.length || !/^\d+$/.test(num)) { return num; } if (/^(y+)(M+)(d+)$/.test(fmt)) { var date = ''; date += "".concat(num.substr(0, RegExp.$1.length)).concat(sep); date += "".concat(num.substr(RegExp.$1.length, RegExp.$2.length)).concat(sep); date += "".concat(num.substr(RegExp.$1.length + RegExp.$2.length, RegExp.$3.length)); return date; } }, // 判断日期是否在有效范围内 inrange: function inrange(date, fmt) { var sep = /-/.test(fmt) ? '-' : '/'; var parts = date.split(sep); var month = Number(parts[1]); var day = Number(parts[2]); var maxs = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month - 1]; if (month < 1 || month > 12) { return false; } if (day < 1 || day > maxs) { return false; } return true; } }; exports.default = _default;