js如何找出两个数组中不同的元素

目录
  • js找出两个数组中不同的元素
  • js找出两个数组中不同元素和相同元素的几种方法
    • 找出不同元素
    • 找出相同的元素
  • 总结

js找出两个数组中不同的元素

function getNewArr(a,b){
    const arr = [...a,...b];
    const newArr = arr.filter(item => {
        return !(a.includes(item) && b.includes(item));
    });
    return newArr;
}
console.log(getNewArr(a,b));

js找出两个数组中不同元素和相同元素的几种方法

题干:

两个数组 var A = [1, 5, 6]; var B = [2, 6, 7],实现一个方法,找出仅存在于A 或者 仅 存在于B中的所有数字

找出不同元素

方法一:

// 方法一:
const filterArr = (arr1, arr2) => {
  const arr = [...arr1, ...arr2];
  const newArr = arr.filter((t) => {
    return !(arr1.includes(t) && arr2.includes(t));
  });
  return newArr;
};

方法二:

// 方法二
const filterArr2 = (arr1, arr2) => {
  // const newArr = arr1.contact(arr2);
  return arr1.concat(arr2).filter((t, i, arr) => {
    return arr.indexOf(t) === arr.lastIndexOf(t);
  });
};

方法三:

// 方法三
const arr1 = A.filter((t) => !B.includes(t));
const arr2 = B.filter((x) => !A.includes(x));
const newArr = arr1.concat(arr2);

找出相同的元素

方法一:

const filterArr = (arr1, arr2) => {
  let result = [];
  for (let i = 0; i < arr1.length; i++) {
    for (let j = 0; j < arr2.length; j++) {
      if (arr1[i] === arr2[j]) {
        result.push(arr1[i]);
      }
    }
  }
  return result;
};

方法二:

const filterArr = (arr1, arr2) => {
  return arr1.filter((t) => {
    return arr2.includes(t);
  });
};

方法三:

const filterArr = (arr1, arr2) => {
  return arr1.filter((t) => {
    return arr2.indexOf(t) !== -1;
  });
};

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • JS判断两个数组或对象是否相同的方法示例

    本文实例讲述了JS判断两个数组或对象是否相同的方法.分享给大家供大家参考,具体如下: JS 判断两个数组是否相同 要判断2个数组是否相同,首先要把数组进行排序,然后转换成字符串进行比较. JSON.stringify([1,2,3].sort()) === JSON.stringify([3,2,1].sort()); //true 或者 [1,2,3].sort().toString() === [3,2,1].sort().toString(); //true 经验证,上述方法对复杂数组结构

  • Javascript从数组中随机取出不同元素的两种方法

    一.常规算法 第一种方法较常规,经测试有bug,数据量大以后随机几次返回的对象直接是function而不是object. 当然简单数据类型应该没有这个问题. 示例代码 /** 从数组中随机抽取数据 2016-09-09 **/ function getArrItem(arr, num) { var temp_array = new Array(); for (var index in arr) { temp_array.push(arr[index]); } var return_array =

  • 详解JS取出两个数组中的不同或相同元素

    1.取出两个数组的不同元素 var arr1 = [0,1,2,3,4,5]; var arr2 = [0,4,6,1,3,9]; function getArrDifference(arr1, arr2) { return arr1.concat(arr2).filter(function(v, i, arr) { return arr.indexOf(v) === arr.lastIndexOf(v); }); } console.log(getArrDifference(arr1,arr2

  • js如何找出两个数组中不同的元素

    目录 js找出两个数组中不同的元素 js找出两个数组中不同元素和相同元素的几种方法 找出不同元素 找出相同的元素 总结 js找出两个数组中不同的元素 function getNewArr(a,b){ const arr = [...a,...b]; const newArr = arr.filter(item => { return !(a.includes(item) && b.includes(item)); }); return newArr; } console.log(ge

  • java实现找出两个文件中相同的单词(两种方法)

    java实现找出两个文件中相同的单词,具体代码如下所示: package com.zy.DesignPrinciples.singleresponsibility; import javax.print.DocFlavor; import java.io.BufferedReader; import java.io.FileReader; import java.util.HashSet; /** * @ClassName: ReaderComplete * @Author: Tiger * @

  • python 如何快速找出两个电子表中数据的差异

    最近刚接触python,找点小任务来练练手,希望自己在实践中不断的锻炼自己解决问题的能力. 公司里会有这样的场景:有一张电子表格的内容由两三个部门或者更多的部门用到,这些员工会在维护这些表格中不定期的跟新一些自己部门的数据,时间久了,大家的数据就开始打架了,非常不利于管理.怎样快速找到两个或者多个电子表格中数据的差异呢? 解决办法: 1. Excel自带的方法(有兴趣的自行百度) 2. python 写一个小脚本 #!/usr/bin/env python # -*- coding: utf-8

  • C++通过自定义函数找出一个整数数组中第二大数的方法

    本文实例讲述了C++通过自定义函数找出一个整数数组中第二大数的方法.分享给大家供大家参考.具体实现方法如下: const int MINNUMBER = -32767 ; //2字节的Int 0x8000-1, //4字节的Int 0x80000000-1 -2147483647 int find_sec_max( int data[] , int count) { int maxnumber = data[0] ; int sec_max = MINNUMBER ; for ( int i =

  • python中找出numpy array数组的最值及其索引方法

    在list列表中,max(list)可以得到list的最大值,list.index(max(list))可以得到最大值对应的索引 但在numpy中的array没有index方法,取而代之的是where,其又是list没有的 首先我们可以得到array在全局和每行每列的最大值(最小值同理) >>> a = np.arange(9).reshape((3,3)) >>> a array([[0, 1, 2], [9, 4, 5], [6, 7, 8]]) >>&

  • JS实现快速比较两个字符串中包含有相同数字的方法

    本文实例讲述了JS实现快速比较两个字符串中包含有相同数字的方法.分享给大家供大家参考,具体如下: 有两个字符串: $a = "5,8,0"; $b = "8,0,5"; 怎样快速比较这两个字符串包含的数字是相同的,其中分隔符都是相同的,只是数字的排序不一样,两个字符串长度是一样的 js代码: 方法一: var s1 = "5,0,8"; var s2 = "8,0,5"; if(s1.split(",").

  • 详解js删除数组中的指定元素

    本篇文章将会给大家介绍两种删除数组中的指定元素的方式,分别为: 1.单独定义一个的函数,通过函数来删除指定数组元素. 2.为Array对象定义了一个removeByValue的方法,在调用方法来删除指定数组元素,调用非常简单的. 下面我们通过简单的代码示例来简单介绍这两种删除数组指定元素的方式. 1.定义单独的函数removeByValue来进行元素删除 代码示例:删除数组somearray里的"tue"元素 <!DOCTYPE html> <html> <

  • Python datacompy 找出两个DataFrames不同的地方

    本篇博客解决在两个几乎完全相同的DataFrame当中如何找出不相同的元素,并使用datacompy直观的显示出来. x表: 让x1和x2都是x的副本,则此时x1和x2的值是相同: x1=x.copy() x2=x.copy() 将其中x2的一个数据赋值为2000 x2.loc['罗梓烜']['20220125']=2000 x1[x1==x2].head(25) # 如何对不相等的数据进行纠正 此时可以看到下图这个数据是NaN值,说明对于这个数据来说x1和x2是不相同的 x1[x1==x2].

  • js判断一个对象是否在一个对象数组中(场景分析)

    目录 场景: 第一个场景解法:如果数组中已经存在,就不能添加 小结: 第二个场景解法: 对象数组去重 场景: 有一个对象数组,如: var arr = [{"appName":"小何","appId":"1"},{"appName":"小王","appId":"2"}] 一般来说,常见的场景有两个: 第一个是,比如鼠标点击按钮,往数组里push()

随机推荐