first commit
This commit is contained in:
@@ -0,0 +1,160 @@
|
||||
//--------------------------------------------------------------
|
||||
//LC
|
||||
//2021-10-31
|
||||
//--------------------------------------------------------------
|
||||
|
||||
//校验银行卡号,银行卡校验规则(Luhn算法)
|
||||
function isBankNo(value) {
|
||||
if (value == "" || !isPositiveInteger(value)) return false;
|
||||
var wei = [],
|
||||
sumOdd = 0,
|
||||
sumEven = 0,
|
||||
length = value.length;
|
||||
for (var j = 0; j < length; j++) {
|
||||
wei[j] = parseInt(value.substring(length - j - 1, length - j)); // 从最末一位开始提取,每一位上的数值
|
||||
}
|
||||
for (var i = 0; i < length / 2; i++) {
|
||||
sumOdd += wei[2 * i];
|
||||
if (wei[2 * i + 1] * 2 > 9) wei[2 * i + 1] = wei[2 * i + 1] * 2 - 9;
|
||||
else wei[2 * i + 1] *= 2;
|
||||
sumEven += wei[2 * i + 1];
|
||||
}
|
||||
return (sumOdd + sumEven) % 10 == 0;
|
||||
}
|
||||
//验证手机号
|
||||
function isPhone(phone){
|
||||
let reg = /^[1][3-9][0-9]{9}$/
|
||||
if(reg.test(phone)){
|
||||
return true;
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
//验证
|
||||
//正整数
|
||||
function isInteger(value) {
|
||||
return /^[1-9][0-9]*$/.test(value);
|
||||
}
|
||||
//浮点类型
|
||||
function isFloat(num) {
|
||||
var reg = /^\d+(?=\.{0,1}\d+$|$)/
|
||||
num=num.replace(/\.\d{2,}$/,num.substr(num.indexOf('.'),3))//删除小数点后两位
|
||||
return reg.test(num) ;
|
||||
}
|
||||
|
||||
//date类型转string,就是2019-10-10 12:00:00这样,date转时间戳就new Date().valueOf()
|
||||
function formatDate (date,type) {
|
||||
if(type=="long")
|
||||
return date.getFullYear()+'-'+(parseInt(date.getMonth())+1)+'-'+date.getDate()+' '+date.getHours()+':'+date.getMinutes()+':'+date.getSeconds()
|
||||
else
|
||||
return date.getFullYear()+'-'+(parseInt(date.getMonth())+1)+'-'+date.getDate()
|
||||
}
|
||||
|
||||
//是否身份证
|
||||
function isIdCard (num) {
|
||||
let reg = /^[1-9]\d{5}(18|19|20|(3\d))\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
|
||||
return reg.test(reg)
|
||||
}
|
||||
|
||||
//密码必须是大小写英文加数字
|
||||
function isPassword(pass) {
|
||||
if(pass.length <8 || pass.length >20){
|
||||
return false;
|
||||
}
|
||||
var str = pass;
|
||||
var regexpUperStr = /[A-Z]+/;
|
||||
var reexpLowerStr = /[a-z]+/;
|
||||
var regexpNum = /\d+/;
|
||||
var uperStrFlag = regexpUperStr.test(str);
|
||||
var lowerStrFlag = reexpLowerStr.test(str);
|
||||
var numFlag = regexpNum.test(str);
|
||||
|
||||
if (uperStrFlag == true && lowerStrFlag == true && numFlag == true)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
//验证昵称
|
||||
function isNickname(nickname){
|
||||
if(nickname.length <2 || nickname.length >16){
|
||||
return false;
|
||||
}
|
||||
var regex = /^(\w|[\u4E00-\u9FA5])*$/;
|
||||
var res = regex.test(nickname);
|
||||
if(res==true){
|
||||
return true;
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
var minute = 1000 * 60;
|
||||
var hour = minute *60;
|
||||
var day = hour *24;
|
||||
var week = day * 7;
|
||||
var month = day * 30;
|
||||
function getTimer(stringTime){
|
||||
var time1 = new Date().getTime();//当前的时间戳
|
||||
stringTime = stringTime.replace(/-/g,'/'); //IOS不支持-格式时间,只支持/格式时间
|
||||
var time2 = Date.parse(new Date(stringTime));//指定时间的时间戳
|
||||
var time = time1 - time2;
|
||||
|
||||
var result = null;
|
||||
if(time < 0){
|
||||
return "";
|
||||
}else if(time/month >= 1){
|
||||
result = parseInt(time/month) + "月前";
|
||||
}else if(time/week >= 1){
|
||||
result = parseInt(time/week) + "周前";
|
||||
}else if(time/day >= 1){
|
||||
result = parseInt(time/day) + "天前";
|
||||
}else if(time/hour >= 1){
|
||||
result = parseInt(time/hour) + "小时前";
|
||||
}else if(time/minute >= 1){
|
||||
result = parseInt(time/minute) + "分钟前";
|
||||
}else {
|
||||
result = "刚刚";
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function getUrlParam(name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
|
||||
var r = window.location.search.substr(1).match(reg);
|
||||
if(r != null) return unescape(r[2]);
|
||||
return null;
|
||||
}
|
||||
function getParam(url,name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
|
||||
var r = url.substr(1).match(reg);
|
||||
if(r != null) return unescape(r[2]);
|
||||
return null;
|
||||
}
|
||||
function formatRichText(html){
|
||||
let newContent= html.replace(/<img[^>]*>/gi,function(match,capture){
|
||||
match = match.replace(/style="[^"]+"/gi, '').replace(/style='[^']+'/gi, '');
|
||||
match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, '');
|
||||
match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, '');
|
||||
return match;
|
||||
});
|
||||
newContent = newContent.replace(/style="[^"]+"/gi,function(match,capture){
|
||||
match = match.replace(/width:[^;]+;/gi, 'max-width:100%;').replace(/width:[^;]+;/gi, 'max-width:100%;');
|
||||
return match;
|
||||
});
|
||||
newContent = newContent.replace(/<br[^>]*\/>/gi, '');
|
||||
newContent = newContent.replace(/\<img/gi, '<img style="max-width:100%;height:auto;display:block;margin:0;"');
|
||||
return newContent;
|
||||
}
|
||||
|
||||
export {
|
||||
isBankNo,
|
||||
isInteger,
|
||||
isFloat,
|
||||
formatDate,
|
||||
isIdCard,
|
||||
isPhone,
|
||||
isPassword,
|
||||
isNickname,
|
||||
getTimer,
|
||||
getUrlParam,getParam,
|
||||
formatRichText,
|
||||
}
|
||||
Reference in New Issue
Block a user