js封装:
// 时间戳转年月日
function formatDate(obj) {
var date = new Date(obj);
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
var h = date.getHours();
h = h < 10 ? ('0' + h) : h;
var minute = date.getMinutes();
var second = date.getSeconds();
minute = minute < 10 ? ('0' + minute) : minute;
second = second < 10 ? ('0' + second) : second;
return y + '-' + m + '-' + d + ' ' + h + ':' + minute + ':' + second;
}
function Trim(str) {
var param = str.replace(/(^\s*)|(\s*$)/g, "");
var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\]<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]");
var rs = "";
for (var i = 0; i < param.length; i++) {
rs = rs + param.substr(i, 1).replace(pattern, '');
}
return rs;
}
// 设置 Cookie
function setCookie(name, value) {
var argv = setCookie.arguments;
var argc = setCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
if (expires != null) {
var LargeExpDate = new Date();
LargeExpDate.setTime(LargeExpDate.getTime() + (expires * 1000 * 3600 * 24));
}
document.cookie = name + "=" + escape(value) + ((expires == null) ? "" : ("; expires=" + LargeExpDate.toGMTString()));
}
// 获取 Cookie
function getCookie(Name) {
var search = Name + "="
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset)
if (end == -1) end = document.cookie.length
return unescape(document.cookie.substring(offset, end))
} else return ""
}
}
// 删除 Cookie
function deleteCookie(name) {
var expdate = new Date();
expdate.setTime(expdate.getTime() - (86400 * 1000 * 1));
setCookie(name, "", expdate);
}
/* 手机号隐藏中间4位*/
function hidd_tel(param_tel) {
return param_tel.substr(0, 3) + "****" + param_tel.substr(7);
}
/**
* 只能填写整数,不包括0
* @param str
* @returns {boolean}
*/
function verifi_fuwuqi(str) {
var zf = /^(-)?[1-9][0-9]*$/
if (!zf.test(str)) {
layer.alert('只能填写整数,不包括0');
return false;
}
}
/**
* 只能填写数字【正整数、正浮点数】
* @param str
* @returns {boolean}
*/
function verifi_amount(str) {
var positive_integer = /^[0-9]*[1-9][0-9]*$/ //正整数
var float_number = /^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/ //正浮点数
if (!positive_integer.test(str) && !float_number.test(str)) {
layer.alert('只能填写数字');
return false;
} else {
return true;
}
}
/**
* 只能填写数字【正整数、正浮点数】
* @param str
* @returns {boolean}
*/
function verifi_amount_two(str) {
var positive_integer = /^[0-9]*[1-9][0-9]*$/ //正整数
var float_number = /^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/ //正浮点数
if (!positive_integer.test(str) && !float_number.test(str)) {
return false;
} else {
return true;
}
}
/**
* 验证订单号,微信订单号(32位),支付宝订单号(28位)
* @param wx_zfb
* @param params
* @returns {boolean}
*/
function verifi_orderid(wx_zfb, params) {
let site = ['runoob', 'google', 'taobao'];
wx_reg = /^[A-Za-z0-9]{28}$/;
zfb_reg = /^[A-Za-z0-9]{32}$/;
if (wx_zfb == 28) {
return wx_reg.test(params);
} else if (wx_zfb == 32) {
return zfb_reg.test(params);
}
}
// 验证是否是手机号
function checkPhone(phone) {
if (!(/^1[3456789]\d{9}$/.test(phone))) {
return false;
} else {
return true;
}
}
// 验证隐藏中间四位的手机号
function checkPhoneHidd(phone) {
var phoneLength = phone.length;
var top_four = phone.substring(0,3);
var lst_four = phone.substring(phoneLength-4,phoneLength);
var top_four_bool = /^[0-9]+$/.test(top_four);
var lst_four_bool = /^[0-9]+$/.test(lst_four);
if(!top_four_bool || !lst_four_bool){
return false;
}else{
return true;
}
}
/**
* [function_name 只能出现字母和数字]
* @Author 刘子鹤
* @CreateTime 2019-06-24
* @LatestUpdateTime 2019-06-24
*/
function verifi_str(param_str) {
var reg = /^[a-zA-Z0-9]+$/;
return reg.test(param_str);
}
/**
* [RemoveChinese 如果字符串中包含汉字,返回 true]
*/
function verifiChinese(strValue) {
var reg = /[\u4e00-\u9fa5]/g;
return reg.test(strValue);
}
// 将秒转换为 时:分:秒
function formatSeconds(value) {
var secondTime = parseInt(value);// 秒
var minuteTime = 0;// 分
var hourTime = 0;// 小时
if (secondTime > 60) {//如果秒数大于60,将秒数转换成整数
//获取分钟,除以60取整数,得到整数分钟
minuteTime = parseInt(secondTime / 60);
//获取秒数,秒数取佘,得到整数秒数
secondTime = parseInt(secondTime % 60);
//如果分钟大于60,将分钟转换成小时
if (minuteTime > 60) {
//获取小时,获取分钟除以60,得到整数小时
hourTime = parseInt(minuteTime / 60);
//获取小时后取佘的分,获取分钟除以60取佘的分
minuteTime = parseInt(minuteTime % 60);
}
}
var result = "" + parseInt(secondTime) + " 秒 "; // 秒
if (minuteTime > 0) {
result = "" + parseInt(minuteTime) + " 分 " + result; // 分钟
}
if (hourTime > 0) {
result = "" + parseInt(hourTime) + " 时 " + result; // 小时
}
return result;
}
// 将时间戳转换成Y-m-d形式
function formatYmd(obj) { //时间戳转年月日
var date = new Date(obj);
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
return y + '-' + m + '-' + d;
}
/**
* 将日期格式转换成时间戳 【 精确到毫秒 】
* @param argument
* @returns {number}
*/
function formatMillisecond(argument) {
var date = new Date(argument); //传入一个时间格式,如果不传入就是获取现在的时间了,这样做不兼容火狐。
var date = new Date(argument.replace(/-/g, '/'));
time_millisecond = date.getTime();
return time_millisecond;
}
/**
* 将日期格式转换成时间戳 【 精确到秒 】
* @param argument
* @returns {number|*}
*/
function formatSecond(argument) {
var date = new Date(argument); //传入一个时间格式,如果不传入就是获取现在的时间了,这样做不兼容火狐。
var date = new Date(argument.replace(/-/g, '/'));
time_millisecond = Date.parse(date);
time_second = time_millisecond / 1000;
return time_second;
}
/**
* 根据指定字符,将字符串分割为数组
* @param param_str
* @returns {never|string[]|*}
*/
function js_explode(param_str, separator_str) {
var arr_res = param_str.split(separator_str);
return arr_res;
}
/**
* 封装请求
*/
var request = new function () {
var self = this;
//post请求
this.post = function (url, data, callback, isReload = false) {
requestType('POST', url, data, callback, isReload);
}
//get请求
this.get = function (url, data, callback, isReload = false) {
requestType('GET', url, data, callback, isReload);
}
}
/**
* AJAX请求
* @param type
* @param url
* @param data
* @param callback
*/
function requestType(type, url, data, callback) {
$.ajax({
url: url,
type: type,
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
dataType: "json",
data: data,
timeout: 60000,
success: function (res) {
callback(res);
},
error: function (xhr, textstatus, thrown) {
var return_error = 'Status:' + xhr.status + ',' + xhr.statusText + ',请联系管理员!'
console.log(return_error);
callback(xhr);
}
});
}