常用函数封装
获取某日期若干个工作日后的日期
* 参数:
* time: [String] 给定日期 yyyy-MM-dd
* itervalByDay: [Number] 相隔工作日
* separator: [String] 年月日分隔符
* 返回:
* rq:[String] 匹配的日期yyyy-MM-dd
var getworkday = function(time, itervalByDay, separator = '-'){
var str = time.split("-");
var date = getDate();
date.setUTCFullYear(str[0], str[1] - 1, str[2]);
date.setUTCHours(0, 0, 0, 0);
var millisceonds =date.getTime();
for(var i = 1; i <= itervalByDay; i++){
millisceonds += 24 * 60 * 60 * 1000;
date.setTime(millisceonds);
if(date.getDay() == 0 || date.getDay() == 6) i--;
}
var year = date.getFullYear();
var month = (date.getMonth() + 1);
var day = date.getDate();
var rq = year + separator + month + separator + day;
return rq;
}
解析URL参数
* 参数:
* url: [String] 解析的URL,可选,不传该值默认本地href
* 返回:
* obj:[Object] 参数集合对象
function getQueryParam(url) {
const href = url || window.location.href;
let args = href.split('?');
if (args[0] === href) {
return {
};
}
var hrefarr = args[1].split('#')[0].split('&');
var obj = {
};
for (var i = 0; i < hrefarr.length; i++) {
hrefarr[i] = hrefarr[i].split('=');
obj[hrefarr[i][0]] = hrefarr[i][1];
}
return obj;
}
格式化日期
* 参数:
* date: 时间戳 [Date]
* isTime: 是否返回具体时间 [Boolean]
* separator: 年月日分隔符 [String]
* 返回:
* isTime: false => yyyy-MM-dd [String]
* isTime: true => yyyy-MM-dd HH:mm:ss [String]
const formatDate = (date, isTime = false, separator = '-') => {
const year = date.getFullYear()
const month = date.getMonth() + 1
const day = date.getDate()
let d = [year, month, day].map(_formatNumber).join(separator)
if (isTime) {
const hour = date.getHours()
const minute = date.getMinutes()
const second = date.getSeconds()
const time = [hour, minute, second].map(_formatNumber).join(':')
d = `${
d} ${
time}`
}
ret