var numToArray = function (num) { var arr = []; for (var i = 0; i < num; i++) { arr[i] = i; } return arr; } var formatNumber = function (n) { n = n.toString() return n[1] ? n : '0' + n } /** * 时间戳格式化时间 */ var formatTime = function (datetime) { if (!datetime) return ''; var date = getDate(datetime * 1000); var year = date.getFullYear() var month = date.getMonth() + 1 var day = date.getDate() var hour = date.getHours() var minute = date.getMinutes() var second = date.getSeconds() return year + '-' + formatNumber(month) + '-' + formatNumber(day) + ' ' + formatNumber(hour) + ':' + formatNumber(minute) + ':' + formatNumber(second); } /** * 时间戳格式化时间 不带秒 */ var formatTimeNoSecond = function (datetime) { if (!datetime) return ''; var date = getDate(datetime * 1000); var year = date.getFullYear() var month = date.getMonth() + 1 var day = date.getDate() var hour = date.getHours() var minute = date.getMinutes() var second = date.getSeconds() return year + '-' + formatNumber(month) + '-' + formatNumber(day) + ' ' + formatNumber(hour) + ':' + formatNumber(minute); } // 时间戳格式化 返回日期 var formatGetDate = function (datetime) { var date = getDate(datetime * 1000); var year = date.getFullYear() var month = date.getMonth() + 1 var day = date.getDate() return year + '-' + formatNumber(month) + '-' + formatNumber(day); } /** * 隐藏字符串 多余字符使用*替代 */ var maskStr = function (str, replace, len) { if (typeof str != 'string') return ''; if(str.length < len) return str; return str.substring(0, len) + replace + replace + replace; } /** * 将字符串分割成数组 */ var splitx = function (str, splitstr) { if (typeof str != 'string') return []; return str.split(splitstr); } var toFixed = function(num, n) { return Math.floor(num * Math.pow(10, n)) / Math.pow(10, n) } var showMoney = function(m) { var _n = m / 1000 if(_n <=1 ) { return m } if (_n > 1 && _n < 10) { return _n.toFixed(1) + '千' } _n = m / 10000 return _n.toFixed(1) + '万' } function formatSeconds(value) { var theTime = parseInt(value);// 需要转换的时间秒 var theTime1 = 0;// 分 var theTime2 = 0;// 小时 var theTime3 = 0;// 天 if (theTime === 0) return [parseInt(theTime), "sec", 'S']; if (theTime > 60) { theTime1 = parseInt(theTime / 60); theTime = parseInt(theTime % 60); if (theTime1 > 60) { theTime2 = parseInt(theTime1 / 60); theTime1 = parseInt(theTime1 % 60); if (theTime2 > 24) { //大于24小时 theTime3 = parseInt(theTime2 / 24); theTime2 = parseInt(theTime2 % 24); } } } var result = ['', '']; if (theTime > 0) { result = [parseInt(theTime) , "sec", 'S']; } if (theTime1 > 0) { result = [parseInt(theTime1), "min", 'M'].concat(result); } if (theTime2 > 0) { result = [parseInt(theTime2), "hour", 'H'].concat(result); } if (theTime3 > 0) { result = [parseInt(theTime3), "day", 'D'].concat(result); } return result; } var formatHourSeconds = function (time) { var sec = parseInt(time % 60); var min = parseInt(parseInt(time / 60) % 60); var hour = parseInt(parseInt(time / 60) / 60); return formatNumber(hour) + ':' + formatNumber(min) + ':' + formatNumber(sec); } var filterHalf = function (l) { return l.filter(function (p, i) { return i % 2 == 1}); } var max = function (arr) { // return [...arr].sort(function (a, b) { return b - a })[0]; //return arr.sort(function (a, b) { return b - a })[0]; return arr.reduce(function(max, current) { return current > max ? current : max; }, -Infinity); } var min = function (arr) { // return [...arr].sort(function (a, b) { return a - b })[0]; // return arr.sort(function (a, b) { return a - b })[0]; return arr.reduce(function(min, current) { return current < min ? current : min; }, Infinity); } var getOption = function (option, value) { return option.filter(function (p, i) { return p.value == value })[0] } var getOptionIndex = function (option, value) { var i for (i = 0; i < option.length; i++) { if (option[i].value == value) { return i } } } module.exports = { numToArray: numToArray, formatTime: formatTime, formatGetDate: formatGetDate, maskStr: maskStr, splitx: splitx, toFixed: toFixed, showMoney: showMoney, formatSeconds: formatSeconds, formatHourSeconds: formatHourSeconds, filterHalf: filterHalf, max: max, min: min, getOption: getOption, getOptionIndex: getOptionIndex, formatTimeNoSecond:formatTimeNoSecond }