比较新旧两个数组值得增加和删除的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 相关文章推荐
jquery提交form表单简单示例分享
Mar 03 Javascript
JavaScript下的时间格式处理函数Date.prototype.format
Jan 27 Javascript
KnockoutJs快速入门教程
May 16 Javascript
浅谈javascript:两种注释,声明变量,定义函数
Oct 05 Javascript
jQuery实现拖拽可编辑模块功能代码
Jan 12 Javascript
es6+angular1.X+webpack 实现按路由功能打包项目的示例
Aug 16 Javascript
vue 实现全选全不选的示例代码
Mar 29 Javascript
vue中render函数的使用详解
Oct 12 Javascript
vue项目刷新当前页面的三种方法
Dec 04 Javascript
vue通过v-html指令渲染的富文本无法修改样式的解决方案
May 20 Javascript
Angular进行简单单元测试的实现方法实例
Aug 16 Javascript
pnpm对npm及yarn降维打击详解
Aug 05 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 strtotime函数详解
2009/12/18 PHP
php实现加减法验证码代码
2014/02/14 PHP
php使用GD实现颜色渐变实例
2015/06/02 PHP
PHP并发多进程处理利器Gearman使用介绍
2016/05/16 PHP
CI框架常用函数封装实例
2016/11/21 PHP
PHP防止sql注入小技巧之sql预处理原理与实现方法分析
2019/12/13 PHP
Javascript 面向对象之重载
2010/05/04 Javascript
可在线编辑网页文字效果代码(单击)
2013/03/02 Javascript
SwfUpload在IE10上不出现上传按钮的解决方法
2013/06/25 Javascript
简单时间提示DEMO从0开始一直进行计时
2013/11/19 Javascript
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
Javascript动态引用CSS文件的2种方法介绍
2014/06/06 Javascript
checkbox选中与未选中判断示例
2014/08/04 Javascript
微信小程序  action-sheet详解及实例代码
2016/11/09 Javascript
jquery实现放大镜简洁代码(推荐)
2017/06/08 jQuery
BootstrapTable加载按钮功能实例代码详解
2017/09/22 Javascript
jq.ajax+php+mysql实现关键字模糊查询(示例讲解)
2018/01/02 Javascript
vue.js 实现a标签href里添加参数
2019/11/12 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
Python中正则表达式的详细教程
2015/04/30 Python
python判断windows系统是32位还是64位的方法
2015/05/11 Python
使用Python发送各种形式的邮件的方法汇总
2015/11/09 Python
python实时分析日志的一个小脚本分享
2017/05/07 Python
python 列表,数组,矩阵两两转换tolist()的实例
2018/04/04 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
Django框架用户注销功能实现方法分析
2019/05/28 Python
CSS书写规范、顺序和命名规则
2014/03/06 HTML / CSS
《曹刿论战》教学反思
2014/03/02 职场文书
新学期决心书
2014/03/11 职场文书
年终工作总结范文2014
2014/11/27 职场文书
中秋节慰问信
2015/02/15 职场文书
人生遥控器观后感
2015/06/11 职场文书
辞职离别感言
2015/08/04 职场文书
《确定位置》教学反思
2016/02/18 职场文书
2016创先争优活动党员公开承诺书
2016/03/24 职场文书
用Python进行栅格数据的分区统计和批量提取
2021/05/27 Python