utils.js 部分工具函数
export function formatTime(time, fmt) {
if (!time) return '';
else {
const date = new Date(time);
const 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,
(date.getFullYear() + '').substr(4 - RegExp.$1.length)
);
for (const 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;
}
}
export function getNowDate() {
const timeOne = new Date()
const year = timeOne.getFullYear()
let month = timeOne.getMonth() + 1
let day = timeOne.getDate()
month = month < 10 ? '0' + month : month
day = day < 10 ? '0' + day : day
const NOW_MONTHS_AGO = `${year}-${month}-${day}`
return NOW_MONTHS_AGO
}
export function getNextDate(date, day) {
var dd = new Date(date);
dd.setDate(dd.getDate() + day);
var y = dd.getFullYear();
var m = dd.getMonth() + 1 < 10 ? "0" + (dd.getMonth() + 1) : dd.getMonth() + 1;
var d = dd.getDate() < 10 ? "0" + dd.getDate() : dd.getDate();
return y + "-" + m + "-" + d;
};
function isNullorEmpty(str) {
return (str == null || str == "" || str == undefined || str == "undefined") && (str != 0 || str != "0") ? true : false;
}
export function numFormat(num, len) {
if (isNullorEmpty(num)) {
return '-';
}
var isNegative = num >= 0 ? false : true;
if (isNegative) {
num = Math.abs(Number(num));
}
var c = num && num != 0 ? (Math.floor(Number(num) * Math.pow(10, len)) / Math.pow(10, len)).toFixed(len).replace(/(\d)(?=(\d{3})+\.)/g, '$1,') : '0';
if (isNegative) {
c = '-' + c;
}
return c;
}
export function toThousands(num) {
var result = '', counter = 0;
var dot = String(num).indexOf(".");
if (dot != -1) {
var dotCnt = String(num).substring(dot + 1, num.length);
num = String(num).split('.')[0]
num = (num || 0).toString();
for (var i = num.length - 1; i >= 0; i--) {
counter++;
result = num.charAt(i) + result;
if (!(counter % 3) && i != 0) { result = ',' + result; }
}
result = result + '.' + dotCnt;
return result;
} else {
return (num || 0).toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
}
}
export function simpleDebounce(fn, delay = 100) {
let timer = null
return function () {
let args = arguments
if (timer) {
clearTimeout(timer)
}
timer = setTimeout(() => {
fn.apply(this, args)
}, delay)
}
}