first commit

This commit is contained in:
Mauve
2026-09-08 17:20:27 +08:00
commit a7f2e0ca01
752 changed files with 111259 additions and 0 deletions
+160
View File
@@ -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,
}