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


Posted in Javascript onSeptember 19, 2014

比较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数据库中导出的表有那些没导入成功.

Javascript 相关文章推荐
javascript 全角转换实现代码
Jul 17 Javascript
Javascript 判断函数类型完美解决方案
Sep 02 Javascript
js对象转json数组的简单实现案例
Feb 28 Javascript
详解jQuery向动态生成的内容添加事件响应jQuery live()方法
Nov 02 Javascript
基于jQuey实现鼠标滑过变色(整行变色)
Dec 07 Javascript
基于Turn.js 实现翻书效果实例解析
Jun 20 Javascript
JS图片等比例缩放方法完整示例
Aug 03 Javascript
JS正则表达式修饰符中multiline(/m)用法分析
Dec 27 Javascript
vue.js事件处理器是什么
Mar 20 Javascript
Vue兼容ie9的问题全面解决方案
Jun 19 Javascript
VUE 3D轮播图封装实现方法
Jul 03 Javascript
关于vue-cli 3配置打包优化要点(推荐)
Apr 22 Javascript
js用Date对象的setDate()函数对日期进行加减操作
Sep 18 #Javascript
JS应用正则表达式转换大小写示例
Sep 18 #Javascript
使用不同的方法结合/合并两个JS数组
Sep 18 #Javascript
js实现按Ctrl+Enter发送效果
Sep 18 #Javascript
javascript搜索框点击文字消失失焦时文本出现
Sep 18 #Javascript
输入框过滤非数字的js代码
Sep 18 #Javascript
小结Node.js中非阻塞IO和事件循环
Sep 18 #Javascript
You might like
php中的观察者模式
2010/03/24 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
Prototype使用指南之range.js
2007/01/10 Javascript
JS IE和FF兼容性问题汇总
2009/02/09 Javascript
跟着JQuery API学Jquery 之二 属性
2010/04/09 Javascript
添加JavaScript重载函数的辅助方法2
2010/07/04 Javascript
UI Events 用户界面事件
2012/06/27 Javascript
JS格式化数字保留两位小数点示例代码
2013/10/15 Javascript
js截取小数点后几位的写法
2013/11/14 Javascript
js实现连个数字相加而不是拼接的方法
2014/02/23 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
js树插件zTree获取所有选中节点数据的方法
2015/01/28 Javascript
javascript设置和获取cookie的方法实例详解
2016/01/05 Javascript
使用递归遍历对象获得value值的实现方法
2016/06/14 Javascript
JS 获取HTML标签内的子节点的方法
2016/09/21 Javascript
canvas 画布在主流浏览器中的尺寸限制详细介绍
2016/12/15 Javascript
JS实现拖拽的方法分析
2016/12/20 Javascript
Node.js静态服务器的实现方法
2018/02/28 Javascript
让你5分钟掌握9个JavaScript小技巧
2018/06/09 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【圆形情况】
2018/12/13 Javascript
Python中的面向对象编程详解(下)
2015/04/13 Python
Python列出一个文件夹及其子目录的所有文件
2016/06/30 Python
Python实现简单层次聚类算法以及可视化
2019/03/18 Python
利用pandas合并多个excel的方法示例
2019/10/10 Python
Python在线和离线安装第三方库的方法
2020/10/31 Python
Groupon法国官方网站:特卖和网上购物高达-70%
2019/09/02 全球购物
网站设计师的岗位职责
2013/11/21 职场文书
医学专业大学生求职的自我评价
2013/11/27 职场文书
食品行业求职人的自我评价
2014/01/19 职场文书
群众路线教育实践活动学习心得体会
2014/10/30 职场文书
部队2015年终工作总结
2015/04/02 职场文书
人事任命通知
2015/04/20 职场文书
初婚初育证明范本
2015/06/18 职场文书
表彰大会新闻稿
2015/07/17 职场文书
Python pandas读取CSV文件的注意事项(适合新手)
2021/06/20 Python
windows安装 redis 6.2.6最新步骤详解
2022/04/26 Redis