今天做项目时,做到注册页面,有一个需求是:要求用户设置的密码不包含全部或部分用户名(任意连续3个字符)。
无奈js薄弱的很,研究了好久才写出来,汗颜。。。。
//截取字符串中相邻的三个字符,并放到新建的数组中
function subStr (str) {
var arr = [];
for(var i=0;i<str.length-2;i++){
var x = str.substring(i,i+3); //x就是每次截取的值
arr.push(x);
}
return arr;
}
//比较两个数组中是否有相同的内容。
function isEqual (arr1,arr2) {
var arr3=[];
for(var s in arr1){
for(var x in arr2){
if(arr1[s]==arr2[x]){
arr3.push(arr1[s]);
}
}
}
return arr3;
}
用法:
var box=isEqual(subStr("hello12"),subStr("nihao123"));
console.log(box); //["o12"]