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的一些看法
May 27 Javascript
JavaScript栏目列表隐藏/显示简单实现
Apr 03 Javascript
js实现延迟加载的方法
Jun 24 Javascript
JavaScript判断IE版本型号
Jul 27 Javascript
JavaScript学习笔记之取数组中最大值和最小值
Mar 23 Javascript
浅析JavaScript中的对象类型Object
May 26 Javascript
AngularJS报错$apply already in progress的解决方法分析
Jan 30 Javascript
Angularjs 动态添加指令并绑定事件的方法
Apr 13 Javascript
深入理解 webpack 文件打包机制(小结)
Jan 08 Javascript
Javascript实现秒表倒计时功能
Nov 17 Javascript
移动端(微信等使用vConsole调试console的方法
Mar 05 Javascript
JS实现简单九宫格抽奖
Jun 28 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
《心理测量者3》剧场版动画预告
2020/03/02 日漫
理解PHP5中static和const关键字的区别
2007/03/19 PHP
PHP正则表达式匹配替换与分割功能实例浅析
2017/02/04 PHP
php爬取天猫和淘宝商品数据
2018/02/23 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
2021/03/09 PHP
jquery与google map api结合使用 控件,监听器
2010/03/04 Javascript
Extjs4 消息框去掉关闭按钮(类似Ext.Msg.alert)
2013/04/02 Javascript
js拼接html注意问题示例探讨
2014/07/14 Javascript
JavaScript实现将UPC转换成ISBN的方法
2015/05/26 Javascript
学习Angularjs分页指令
2016/07/01 Javascript
jQuery实现字符串全部替换的方法【推荐】
2017/03/09 Javascript
js实现下拉框效果(select)
2017/03/28 Javascript
JavaScrpt判断一个数是否是质数的实例代码
2017/06/11 Javascript
vue 动态绑定背景图片的方法
2018/08/10 Javascript
解决vue中post方式提交数据后台无法接收的问题
2018/08/11 Javascript
JS 实现获取验证码 倒计时功能
2018/10/29 Javascript
浅谈Vue的响应式原理
2019/05/30 Javascript
js实现页面多个日期时间倒计时效果
2019/06/20 Javascript
Node.js操作MongoDB数据库实例分析
2020/01/19 Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
2020/07/26 Javascript
python多线程并发实例及其优化
2019/06/27 Python
python修改字典键(key)的方法
2019/08/05 Python
Python的互斥锁与信号量详解
2019/09/12 Python
python 实现dict转json并保存文件
2019/12/05 Python
python 实现查询Neo4j多节点的多层关系
2019/12/23 Python
已安装tensorflow-gpu,但keras无法使用GPU加速的解决
2020/02/07 Python
对django 2.x版本中models.ForeignKey()外键说明介绍
2020/03/30 Python
Python基于百度AI实现OCR文字识别
2020/04/02 Python
Python使用20行代码实现微信聊天机器人
2020/06/05 Python
使用canvas对多图片拼合并导出图片的方法
2018/08/28 HTML / CSS
植物选择:Botanic Choice
2017/02/15 全球购物
导游实习生自荐书
2014/01/28 职场文书
体育教师求职信
2014/06/30 职场文书
亚布力滑雪场导游词
2015/02/09 职场文书
如果用一句诗总结你的上半年,你会用哪句呢?
2019/07/16 职场文书
分享Python获取本机IP地址的几种方法
2022/03/17 Python