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 事件查询综合 推荐收藏
Mar 10 Javascript
深入理解JavaScript系列(6) 强大的原型和原型链
Jan 15 Javascript
jQuery点击tr实现checkbox选中的方法
Mar 19 Javascript
js 文本滚动效果的实例代码
Aug 17 Javascript
同域jQuery(跨)iframe操作DOM(示例代码)
Dec 13 Javascript
jQuery实现径向动画菜单效果
Jul 17 Javascript
javascript中SetInterval与setTimeout的定时器用法
Aug 24 Javascript
React props和state属性的具体使用方法
Apr 12 Javascript
创建Vue项目以及引入Iview的方法示例
Dec 03 Javascript
TypeScript开发Node.js程序的方法
Apr 30 Javascript
js实现贪吃蛇小游戏
Oct 29 Javascript
jQuery实现简单全选框
Sep 13 jQuery
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 adodb操作mysql数据库
2009/03/19 PHP
关于php 接口问题(php接口主要也就是运用curl,curl函数)
2013/07/01 PHP
php创建、获取cookie及基础要点分析
2015/01/26 PHP
php生成验证码,缩略图及水印图的类分享
2016/04/07 PHP
javascript 页面划词搜索JS
2009/09/28 Javascript
js自定义事件代码说明
2011/01/31 Javascript
JS实现简单的顶部定时关闭层效果
2014/06/15 Javascript
深入浅析JavaScript中的constructor
2016/04/19 Javascript
ionic实现下拉刷新载入数据功能
2017/05/11 Javascript
详解用vue.js和laravel实现微信支付
2017/06/23 Javascript
JS判断Android、iOS或浏览器的多种方法(四种方法)
2017/06/29 Javascript
Angular中ng-repeat与ul li的多层嵌套重复问题
2017/07/24 Javascript
详解node单线程实现高并发原理与node异步I/O
2017/09/21 Javascript
在vue中使用jointjs的方法
2018/03/24 Javascript
node将geojson转shp返回给前端的实现方法
2019/05/29 Javascript
Element ui 下拉多选时新增一个选择所有的选项
2019/08/21 Javascript
小程序如何获取多个formId实现详解
2019/09/20 Javascript
原生JS无缝滑动轮播图
2019/10/22 Javascript
原生js实现日历效果
2020/03/02 Javascript
跟老齐学Python之从if开始语句的征程
2014/09/14 Python
Python设计模式编程中解释器模式的简单程序示例分享
2016/03/02 Python
Python面向对象程序设计中类的定义、实例化、封装及私有变量/方法详解
2019/02/28 Python
python中字典增加和删除使用方法
2020/09/30 Python
AmazeUI中模态框的实现
2020/08/19 HTML / CSS
计算机网络专业个人的自我评价
2013/10/17 职场文书
中专生的个人自我评价
2013/12/11 职场文书
大学学雷锋活动总结
2014/06/26 职场文书
出售房屋协议书范本
2014/10/06 职场文书
学习焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
群众路线自查报告及整改措施
2014/11/04 职场文书
女性健康讲座主持词
2015/07/04 职场文书
高三数学教学反思
2016/02/18 职场文书
PHP实现考试倒计时功能代码
2021/04/16 PHP
教你怎么用python实现字符串转日期
2021/05/24 Python
数据库之SQL技巧整理案例
2021/07/07 SQL Server
Vue的列表之渲染,排序,过滤详解
2022/02/24 Vue.js