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控制swfObject应用介绍
Nov 29 Javascript
js给dropdownlist添加选项的小例子
Mar 04 Javascript
Jquery AJAX POST与GET之间的区别
Nov 14 Javascript
jsPDF生成pdf后在网页展示实例
Jan 16 Javascript
jQuery ajax调用WCF服务实例
Jul 16 Javascript
jquery移动点击的项目到列表最顶端的方法
Jun 24 Javascript
js实现简洁大方的二级下拉菜单效果代码
Sep 01 Javascript
分享Javascript实用方法二
Dec 13 Javascript
JavaScript实现简单评论功能
Aug 17 Javascript
vue进行图片的预加载watch用法实例讲解
Feb 07 Javascript
Vue组件创建和传值的方法
Aug 17 Javascript
微信小程序实现登录遮罩效果
Nov 01 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的ob_start();控制您的浏览器cache!
2007/02/14 PHP
php短网址和数字之间相互转换的方法
2015/03/13 PHP
php使用number_format函数截取小数的方法分析
2016/05/27 PHP
深入解析Laravel5.5中的包自动发现Package Auto Discovery
2017/09/13 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
PHP实现的一致性Hash算法详解【分布式算法】
2018/03/31 PHP
laravel dingo API返回自定义错误信息的实例
2019/09/29 PHP
PHP date_default_timezone_set()设置时区操作实例分析
2020/05/16 PHP
js检测客户端不是firefox则提示下载
2007/04/07 Javascript
js操作Xml(向服务器发送Xml,处理服务器返回的Xml)(IE下有效)
2009/01/30 Javascript
扩展Jquery插件处理mouseover时内部有子元素时发生样式闪烁
2011/12/08 Javascript
一个背景云变换js特效 鼠标移动背景云变化
2012/12/28 Javascript
jquery获取自定义属性(attr和prop)实例介绍
2013/04/21 Javascript
js控制表单奇偶行样式的简单方法
2013/07/31 Javascript
javascript中返回顶部按钮的实现
2015/05/05 Javascript
jQuery预加载图片常用方法
2015/06/15 Javascript
js限制文本框的输入内容代码分享(3类)
2015/08/20 Javascript
用Vue-cli搭建的项目中引入css报错的原因分析
2017/07/20 Javascript
js设置随机切换背景图片的简单实例
2017/11/12 Javascript
基于vue实现web端超大数据量表格的卡顿解决
2019/04/02 Javascript
js canvas实现五子棋小游戏
2021/01/22 Javascript
PyMongo安装使用笔记
2015/04/27 Python
python去除所有html标签的方法
2015/05/05 Python
python中PIL安装简单教程
2016/04/21 Python
Sanic框架配置操作分析
2018/07/17 Python
对python:循环定义多个变量的实例详解
2019/01/20 Python
TensorFlow卷积神经网络之使用训练好的模型识别猫狗图片
2019/03/14 Python
解决tensorboard多个events文件显示紊乱的问题
2020/02/15 Python
Django 解决由save方法引发的错误
2020/05/21 Python
手把手教你实现一个canvas智绘画板的方法
2019/03/04 HTML / CSS
UGG雪地靴荷兰官网:UGG荷兰
2016/09/09 全球购物
澳大利亚婴儿喂养品牌:Cherub Baby
2018/11/01 全球购物
七年级政治教学反思
2014/02/03 职场文书
《孔繁森》教学反思
2014/04/17 职场文书
退学证明范本3篇
2014/10/29 职场文书
大学生就业指导课心得体会
2016/01/15 职场文书