源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

JS实现的用来对比两个用指定分隔符分割的字符串是否相同

  • 时间:2022-08-16 05:25 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:JS实现的用来对比两个用指定分隔符分割的字符串是否相同
比较2个字符串内元素的不同(字符1, 字符2, 分隔符可选) 文件: diff.js
// 示例用法
/*

var str1 = "tie, mao, 55";
var str2 = "tie, mao, csdn";
var result = diff(str1, str2, ','); // 对象
var rs = "" + result;  // " 55, csdn"
var df1 = result.diff1; // [" 55"]
var df2 = result.diff2; // [" csdn"]

*/

// 比较2个字符串内元素的不同(字符1, 字符2, 分隔符可选)
function diff(str1, str2, separator){
 //
 str1 = str1 || "";
 str2 = str2 || "";
 separator = separator || ",";
 // arr中有ele元素
 function hasElement(arr, ele){
  // 内存循环
  var hasItem1 = false;
  for(var i2=0; i2 < arr.length; i2++){
   //
   var item2 = arr[i2] || "";
   if(!item2){
    continue;
   }
   //
   if(ele == item2){
    hasItem1 = true;
    break;
   }
  }
  return hasItem1;
 };
 function inAnotB(a, b){ // 在A中,不在B中
  var res = [];
  for(var i1=0; i1 < a.length; i1++){
   var item1 = a[i1] || "";
   if(!item1){
    continue;
   }
   var hasItem1 = hasElement(b, item1);
   if(!hasItem1){
    res.push(item1);
   }
  }
  return res;
 };
 //
 var list1 = str1.split(",");
 var list2 = str2.split(",");
 //
 var diff1 = inAnotB(list1, list2);
 var diff2 = inAnotB(list2, list1);
 
 // 返回结果
 var result = {
  diff1 : diff1
  ,
  diff2 : diff2
  ,
  separator : separator
  ,
  toString : function(){
   //
   var res = this["diff1"].slice(0);
   res = res.concat(this["diff2"]);
   //
   return res.join(this["separator"]);
  }
 };
 //
 return result;
};
请根据需要使用, 我用来比较在2个Oracle数据库中导出的表有那些没导入成功.
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部