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 播放器 控制
Jan 22 Javascript
用JavaScrpt实现文件夹简单轻松加密的实现方法图文
Sep 08 Javascript
JavaScript对IE操作的经典代码(推荐)
Mar 10 Javascript
JavaScript Promise 用法
Jun 14 Javascript
Windows环境下npm install 报错: operation not permitted, rename的解决方法
Sep 26 Javascript
利用Jasmine对Angular进行单元测试的方法详解
Jun 12 Javascript
浅谈Vuex@2.3.0 中的 state 支持函数申明
Nov 22 Javascript
vue 标签属性数据绑定和拼接的实现方法
May 17 Javascript
D3.js实现拓扑图的示例代码
Jun 30 Javascript
axios携带cookie配置详解(axios+koa)
Dec 28 Javascript
JavaScript实现滑动门效果
Jan 18 Javascript
vue实现列表滚动的过渡动画
Jun 29 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
Smarty安装配置方法
2008/04/10 PHP
PHP中CURL方法curl_setopt()函数的参数分享
2013/01/19 PHP
ThinkPHP之用户注册登录留言完整实例
2014/07/22 PHP
PHP PDOStatement::fetch讲解
2019/01/31 PHP
js Event对象的5种坐标
2011/09/12 Javascript
一个可拖拽列宽表格实例演示
2012/11/26 Javascript
JQuery操作三大控件(下拉,单选,复选)的方法
2013/08/06 Javascript
JS网页图片按比例自适应缩放实现方法
2014/01/15 Javascript
使用POST方式弹出窗口的两种方法示例介绍
2014/01/29 Javascript
javascript中加号(+)操作符的一些神奇作用
2014/06/06 Javascript
动态加载js的方法汇总
2015/02/13 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
2015/09/09 Javascript
JS实现完全语义化的网页选项卡效果代码
2015/09/15 Javascript
谈谈javascript中使用连等赋值操作带来的问题
2015/11/26 Javascript
JS采用绝对定位实现回到顶部效果完整实例
2016/06/20 Javascript
JavaScript中Number对象的toFixed() 方法详解
2016/09/02 Javascript
vue超时计算的组件实例代码
2018/07/09 Javascript
vue 的点击事件获取当前点击的元素方法
2018/09/15 Javascript
JS实现倒计时图文效果
2018/11/17 Javascript
微信小程序中weui用法解析
2019/10/21 Javascript
小程序中的箭头函数的具体使用
2020/06/19 Javascript
jQuery 动态粒子效果示例代码
2020/07/07 jQuery
js实现车辆管理系统
2020/08/26 Javascript
Python实现批量下载文件
2015/05/17 Python
Python学生成绩管理系统简洁版
2020/04/05 Python
python paramiko利用sftp上传目录到远程的实例
2019/01/03 Python
python面试题小结附答案实例代码
2019/04/11 Python
Flask教程之重定向与错误处理实例分析
2019/08/01 Python
Mac PyCharm中的.gitignore 安装设置教程
2020/04/16 Python
Python基于time模块表示时间常用方法
2020/06/18 Python
Toppik顶丰增发纤维官网:解决头发稀疏
2017/12/30 全球购物
优秀求职自荐信怎样写
2013/12/18 职场文书
学生自我鉴定
2013/12/18 职场文书
高中英语教学反思
2014/02/04 职场文书
2014迎国庆演讲稿
2014/09/19 职场文书
MySQL分区以及建索引的方法总结
2022/04/13 MySQL