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 相关文章推荐
js模拟点击事件实现代码
Nov 06 Javascript
node.js开机自启动脚本文件
Dec 24 Javascript
html、css和jquery相结合实现简单的进度条效果实例代码
Oct 24 Javascript
用iframe实现不刷新整个页面上传图片的实例
Nov 18 Javascript
浅谈Angular.js中使用$watch监听模型变化
Jan 10 Javascript
Node.js之网络通讯模块实现浅析
Apr 01 Javascript
详解webpack + vue + node 打造单页面(入门篇)
Sep 23 Javascript
jQuery EasyUI 选项卡面板tabs的使用实例讲解
Dec 25 jQuery
浅谈Node.js 中间件模式
Jun 12 Javascript
JS实现动态无缝轮播
Jan 11 Javascript
vue实现购物车案例
May 30 Javascript
vue使用swiper实现左右滑动切换图片
Oct 16 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
用Socket发送电子邮件(利用需要验证的SMTP服务器)
2006/10/09 PHP
PHP系统流量分析的程序
2006/10/09 PHP
PHP5 安装方法
2007/01/15 PHP
Javascript调用XML制作连动下拉列表框
2006/06/25 Javascript
阻止事件(取消浏览器对事件的默认行为并阻止其传播)
2013/11/03 Javascript
JavaScript参数个数可变的函数举例说明
2014/10/10 Javascript
JavaScript中的数据类型转换方法小结
2015/10/26 Javascript
Node.js测试中的Mock文件系统详解
2016/11/21 Javascript
JS数组搜索之折半搜索实现方法分析
2017/03/27 Javascript
JavaScript之filter_动力节点Java学院整理
2017/06/28 Javascript
JS获取填报扩展单元格控件的值的解决办法
2017/07/14 Javascript
纯js实现页面返回顶部的动画(超简单)
2017/08/10 Javascript
纯js实现无缝滚动功能代码实例
2020/02/21 Javascript
Node 模块原理与用法详解
2020/05/13 Javascript
各个系统下的Python解释器相关安装方法
2015/10/12 Python
django模板语法学习之include示例详解
2017/12/17 Python
Python实现的径向基(RBF)神经网络示例
2018/02/06 Python
用pycharm开发django项目示例代码
2019/06/13 Python
python字典一键多值实例代码分享
2019/06/14 Python
python实现接口并发测试脚本
2019/06/25 Python
基于Python的接口自动化读写excel文件的方法
2021/01/15 Python
深入解读CSS3中transform变换模型的渲染
2016/05/27 HTML / CSS
CSS3实现曲线阴影和翘边阴影
2016/05/03 HTML / CSS
美国家具网站:Cymax
2016/09/17 全球购物
Brasty波兰:香水、化妆品、手表网上商店
2019/04/15 全球购物
J2EE是技术还是平台还是框架
2016/08/14 面试题
写好自荐信要注意的问题
2013/11/10 职场文书
结构工程个人自荐信范文
2013/11/30 职场文书
幼儿园教研活动方案
2014/01/19 职场文书
大学生秋游活动方案
2014/02/17 职场文书
职业生涯规划书怎么写?
2014/09/14 职场文书
超搞笑婚前保证书
2015/05/08 职场文书
运动会开幕式通讯稿
2015/07/18 职场文书
高效课堂教学反思
2016/02/24 职场文书
优秀党员先进事迹材料2016
2016/02/29 职场文书
Python中的 enumerate和zip详情
2022/05/30 Python