1. var arr1 = ['a','b'];
  2. var arr2 = ['a','c','d'];
  3. var arr3 = [1,'d',undefined,true,null];
  4. //合并两个数组,去重
  5. var concat_ = function(arr1,arr2){
  6. //不要直接使用var arr = arr1,这样arr只是arr1的一个引用,两者的修改会互相影响
  7. var arr = arr1.concat();
  8. //或者使用slice()复制,var arr = arr1.slice(0)
  9. for(var i=0;i<arr2.length;i++){
  10. arr.indexOf(arr2[i]) === -1 ? arr.push(arr2[i]) : 0;
  11. }
  12. return arr;
  13. }
  1. //合并多个数组,去重
  2. var concat = function(arr1,arr2,arr3){
  3. if(arguments.length <= 1){
  4. return false;
  5. }
  6. var concat_ = function(arr1,arr2){
  7. var arr = arr1.concat();
  8. for(var i=0;i<arr2.length;i++){
  9. arr.indexOf(arr2[i]) === -1 ? arr.push(arr2[i]) : 0;
  10. }
  11. return arr;
  12. }
  13. var result = concat_(arr1,arr2);
  14. for(var i=2;i<arguments.length;i++){
  15. result = concat_(result,arguments[i]);
  16. }
  17. return result;
  18. }
  19. //合并多个数组,去重,排序
  20. var arr1 = [1,6,4,0];
  21. var arr2 = [8,20,7,4.5];
  22. var arr3 = [6,0,7,90,2];
  23. var concat = function(arr1,arr2,arr3){
  24. if(arguments.length <= 1){
  25. return false;
  26. }
  27. var concat_ = function(arr1,arr2){
  28. var arr = arr1.concat();
  29. for(var i=0;i<arr2.length;i++){
  30. arr.indexOf(arr2[i]) === -1 ? arr.push(arr2[i]) : 0;
  31. }
  32. return arr;
  33. }
  34. var result = concat_(arr1,arr2);
  35. for(var i=2;i<arguments.length;i++){
  36. result = concat_(result,arguments[i]);
  37. }
  38. //排序
  39. function sortNumber(a,b){
  40. return a - b;
  41. }
  42. return result.sort(sortNumber);
  43. }
 
 
//查找两个数组的重复项
代码如下:
    var desk=function(arr1,arr2){
        var arr=[];
        for(var i=0;i<arr2.length;i++){
            if(arr1.indexOf(arr2[i])!==-1){
                arr.push(arr2[i]);
            }
        }
        return arr;
    };
    var a=desk([1,2,4,5,6,7,8],[2,3,4,5,7,8]);
    console.log(a);  //[2,4,6,7,8]

JS合并多个数组去重算法的更多相关文章

  1. javascript数组去重算法-----3

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. javascript数组去重算法-----2

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. javascript数组去重算法-----1

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. javascript数组去重算法-----5

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. javascript数组去重算法-----4(另一种写法__2)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. javascript数组去重算法-----4(另一种写法)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. javascript数组去重算法-----4

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. JS合并两个数组的方法

    JS合并两个数组的方法 我们在项目过程中,有时候会遇到需要将两个数组合并成为一个的情况.比如: var a = [1,2,3]; var b = [4,5,6]; 有两个数组a.b,需求是将两个数组合 ...

  9. JS数组去重算法实现

    之前一段时间一直在准备面试, 因而博客太久没更新: 现在基本知识点都复习完毕, 接下来就分享下 面试的一些常见问题: 去正规的互联网公司笔试.面试有很大的概率会碰到 使用javascript实现数组去 ...

随机推荐

  1. [Vuex系列] - Vuex中的getter的用法

    Vuex 允许我们在store中定义“getter”(可以认为是store的计算属性).就像计算属性一样,getter的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算. g ...

  2. 前端理解控制反转ioc

    工作一直都是写前端,而且都是偏业务的.相关的框架代码层面的了解还是有很大的缺失.一直想多写些维护性,可读性强的代码. 这段时间对控制反转ioc,这样的设计有了一个初步的了解. 前端为弱语言,平时代码的 ...

  3. 简单SQL注入试探、二

    DVWA——简单SQL注入小记 今天我们来记录简单的盲注过程 简单的SQL injection(blind) Level:low 登陆后选择SQL Injection(Blind) 能看到这样的界面 ...

  4. 为什么需要 RPC 服务?

    链接:https://www.jianshu.com/p/362880b635f0 在传统的开发模式中,我们通常将系统的各个服务部署在单台机器,随着服务的扩展,这种方式已经完全无法满足系统大规模的扩展 ...

  5. JavaScript基础概念与语法

    学习了一些最基础的JavaScript语法: <!DOCTYPE html> <html lang="en"> <head> <meta ...

  6. .netFramework中新增的功能—.net最新信息—.net的发展

    关键字:.NET Framework 中的新增功能 链接地址:https://docs.microsoft.com/zh-cn/dotnet/framework/whats-new/index 链接地 ...

  7. linux(3)

    一.用户和组的管理 Linux/Unix是多用户系统: root是超级用户,拥有最高权限.其它用户及权限由root来管理.对比Windows系统: 控制面板 -> 管理工具 -> 计算机管 ...

  8. Python break, continue, pass 语句

    今天心情好好,来record一下,continue break pass 语句 1.break 与 continue break 语句可以跳出 for 和 while 的循环体.如果你从 for 或 ...

  9. 登录授权、TCP/IP、HTTPS

    今天继续纯理论的东东,比较枯燥,但是又很重要,坚持.. 登录和授权 登录和授权的区别: 登录:身份认证,即确认「你是你」的过程. 授权:由身份或持有的令牌确认享有某些权限(例如获取用户信息).登录过程 ...

  10. 【转】Golang汇编命令解读

    原文: https://www.cnblogs.com/yjf512/p/6132868.html ------------------------------------------------- ...