JS实现的用来对比两个用指定分隔符分割的字符串是否相同
比较2个字符串内元素的不同(字符1,字符2,分隔符可选)
文件:diff.js
//示例用法
/*
varstr1="tie,mao,55";
varstr2="tie,mao,csdn";
varresult=diff(str1,str2,',');//对象
varrs=""+result;//"55,csdn"
vardf1=result.diff1;//["55"]
vardf2=result.diff2;//["csdn"]
*/
//比较2个字符串内元素的不同(字符1,字符2,分隔符可选)
functiondiff(str1,str2,separator){
//
str1=str1||"";
str2=str2||"";
separator=separator||",";
//arr中有ele元素
functionhasElement(arr,ele){
//内存循环
varhasItem1=false;
for(vari2=0;i2<arr.length;i2++){
//
varitem2=arr[i2]||"";
if(!item2){
continue;
}
//
if(ele==item2){
hasItem1=true;
break;
}
}
returnhasItem1;
};
functioninAnotB(a,b){//在A中,不在B中
varres=[];
for(vari1=0;i1<a.length;i1++){
varitem1=a[i1]||"";
if(!item1){
continue;
}
varhasItem1=hasElement(b,item1);
if(!hasItem1){
res.push(item1);
}
}
returnres;
};
//
varlist1=str1.split(",");
varlist2=str2.split(",");
//
vardiff1=inAnotB(list1,list2);
vardiff2=inAnotB(list2,list1);
//返回结果
varresult={
diff1:diff1
,
diff2:diff2
,
separator:separator
,
toString:function(){
//
varres=this["diff1"].slice(0);
res=res.concat(this["diff2"]);
//
returnres.join(this["separator"]);
}
};
//
returnresult;
};
请根据需要使用,我用来比较在2个Oracle数据库中导出的表有那些没导入成功.