比较新旧两个数组值得增加和删除的JS代码


Posted in Javascript onOctober 30, 2013
以前项目中用到自己写的,应该没有bug吧,有更好的也欢迎大家指教,
var Return_AddStrFn=function (oldArr, newArr) {
        var t = this;



 //去重复的方法
        Array.prototype.unique4 = function () {
            // this = arr;
            var temp = new Array();
            this.sort();
            for (i = 0; i < this.length; i++) {
                if (this[i] == this[i + 1]) {
                    continue;
                }
                temp[temp.length] = this[i];
            }
            return temp;
        }
        var a = d = oldArr.unique4(); //旧数组
        var b = e = newArr.unique4();//新数组
        var c = [];
        var dels = [];
        function f() {
            a.sort();
            b.sort();
            var i = 0;
            var j = 0;
            while (i < a.length && j < b.length) {
                if (a[i] < b[j]) {
                    c.push(a[i]);
                    i++;
                } else if (b[j] < a[i]) {
                    c.push(b[j]);
                    j++;
                } else {
                    i++;
                    j++;
                }
            }
            while (i < a.length) {
                c.push(a[i]);
                i++;
            }
            while (j < b.length) {
                c.push(b[j]);
                j++;
            }
        }
        f();
        //alert("c:" + c);
        //alert("d:" + d);
        var addstr = [];
        for (var i = 0; i < c.length; i++) {
            for (var j = 0; j < e.length; j++) {
                if (e[j] == c[i]) {
                    addstr.push(e[j]);
                }
            }
        }
        return addstr; //新增的
        //for (var i = 0; i < c.length; i++) {
        //    for (var j = 0; j < d.length; j++) {
        //        if (d[j] == c[i]) {
        //            dels.push(d[j]);
        //        }
        //    }
        //}
        //alert("dels:" + dels); //删除的
    }

调用方式: var arr = [1, 2,2,3, 3, 4, 5];
              var arr2=[1,2,5]

       var addStr=Return_AddStrFn(arr2,arr);

Javascript 相关文章推荐
JS动画效果代码3
Apr 03 Javascript
input、button的不同type值在ajax提交表单时导致的陷阱
Feb 24 Javascript
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
Jul 06 Javascript
JavaScript 监听textarea中按键事件
Oct 08 Javascript
jquery中插件实现自动添加用户的具体代码
Nov 15 Javascript
js 判断js函数、变量是否存在的简单示例代码
Mar 04 Javascript
如何用JavaScript定义一个类
Sep 12 Javascript
Jquery使用val方法读写value值
May 18 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
Sep 30 Javascript
vue axios 简单封装以及思考
Oct 09 Javascript
ES6学习笔记之let与const用法实例分析
Jan 22 Javascript
Vue通过provide inject实现组件通信
Sep 03 Javascript
利用javascript实现web页面中指定区域打印
Oct 30 #Javascript
javascript ajax 仿百度分页函数
Oct 29 #Javascript
JS禁用浏览器退格键实现思路及代码
Oct 29 #Javascript
javaScript实现浮点数转十六进制字符
Oct 29 #Javascript
JavaScript显示当然日期和时间即年月日星期和时间
Oct 29 #Javascript
js动态设置div的值下例子
Oct 29 #Javascript
Jquery 复选框取值兼容FF和IE8(测试有效)
Oct 29 #Javascript
You might like
php学习 字符串课件
2008/06/15 PHP
删除无限分类并同时删除它下面的所有子分类的方法
2010/08/08 PHP
javascript类继承机制的原理分析
2009/09/12 Javascript
function foo的原型与prototype属性解惑
2010/11/19 Javascript
jqGrid读取选择的多行的某个属性代码
2014/05/18 Javascript
jQuery判断checkbox是否选中的3种方法
2014/08/12 Javascript
node.js中的path.dirname方法使用说明
2014/12/09 Javascript
轻松实现javascript数据双向绑定
2015/11/11 Javascript
最简单的JavaScript图片轮播代码(两种方法)
2015/12/18 Javascript
js HTML5多图片上传及预览实例解析(不含前端的文件分割)
2016/08/26 Javascript
js 中文汉字转Unicode、Unicode转中文汉字、ASCII转换Unicode、Unicode转换ASCII、中文转换
2016/12/06 Javascript
浅谈webpack打包过程中因为图片的路径导致的问题
2018/02/21 Javascript
JavaScript数组、json对象、eval()函数用法实例分析
2019/02/21 Javascript
Python从MP3文件获取id3的方法
2015/06/15 Python
Python中 Lambda表达式全面解析
2016/11/28 Python
Sanic框架请求与响应实例分析
2018/07/16 Python
python3.6使用urllib完成下载的实例
2018/12/19 Python
python实现QQ空间自动点赞功能
2019/04/09 Python
网易有道2017内推编程题 洗牌(python)
2019/06/19 Python
python2 对excel表格操作完整示例
2020/02/23 Python
python实现logistic分类算法代码
2020/02/28 Python
Django ORM filter() 的运用详解
2020/05/14 Python
序列化Python对象的方法
2020/08/01 Python
英国最大的邮寄种子和植物公司:Thompson & Morgan
2017/09/21 全球购物
以工厂直接定价的传奇性能:Ben Hogan Golf
2019/01/04 全球购物
新西兰网上购物,折扣店:BestDeals.co.nz
2019/03/20 全球购物
介绍java中初始化块的使用
2012/09/11 面试题
电脑教师的自我评价
2013/12/18 职场文书
商场主管竞聘书
2014/03/31 职场文书
财务部副经理岗位职责范本
2014/06/17 职场文书
2015个人简历自我评价语
2015/03/11 职场文书
团委工作总结2015
2015/04/02 职场文书
乡镇团委工作总结2015
2015/05/26 职场文书
2016年幼儿园万圣节活动总结
2016/04/05 职场文书
Python 高级库15 个让新手爱不释手(推荐)
2021/05/15 Python
Win11运行cmd提示“请求的操作需要提升”的两种解决方法
2022/07/07 数码科技