//判斷密碼不能輸入相同字母
removeRepeatStr(str){ //不能為相同字符
var newStr = '';
var len = str.length;
for(var i=0; i<len; i++){
if(newStr.indexOf(str[i])==-1){
newStr = newStr + str[i];
}
}
return newStr;
},
//判斷密碼不能輸入連續字符
lxStr(str) {
var flag = true;
for(var i= 1; i< str.length; i++) {
flag = flag && str.charCodeAt(i) == str.charCodeAt(i-1) + 1;
}
return flag;
},
//使用方法 Vue data 里面
let inputPasswordReg = (rule, value, callback) => {
let str = this.$utils.removeRepeatStr(value); //去重之后長度是否為1,如果為1,那么就是密碼每一個都一樣
if(value === '') {
callback(new Error('請輸入新增賬號密碼'))
}else if(value.length<8 || value.length>16) {
callback(new Error('請輸入8-16位密碼'))
}else if(str.length == 1) { //代表是完全相同的數字和字母
callback(new Error('抱歉,不能是完全相同的字符'))
}else if(this.$utils.lxStr(value) == true) {
callback(new Error('抱歉,不能是連續的數字或字母'))
}else if(!this.$utils.validator.isPassword(value)){
callback('抱歉,至少含字母/數字、符號2種組合')
}else{
callback()
}
}