鍍金池/ 問答/HTML/ 怎么判斷兩個數(shù)組有相同的數(shù)據(jù)

怎么判斷兩個數(shù)組有相同的數(shù)據(jù)

一個數(shù)組["13096399408"],兩一個數(shù)組["13096399408", "13096399542"]
怎么判斷兩個數(shù)組有相同的數(shù)據(jù)13096399408?

哪位大佬幫下,謝謝

回答
編輯回答
不舍棄

ES6
let isin = ["13096399408", "13096399542"].includes("13096399408")
console.log(isin)

其實這個問題可以擴展一下,
假如說,我有兩個 數(shù)組1 [1,2,3,5,8,9] , 數(shù)組2 [1,3,5],我怎么判斷 數(shù)組1是否包含數(shù)組2所有的值呢
可以用

let arr1 = [1,2,3,5,8,9]
let arr2= [1,3,5]

let res = arr2.every((x)=>{
  return arr1.includes(x)
})

console.log(res) //true

還有,如果是要取相同的部分,比如說 [1,3,5,7],和 [1,2,3,5,8,9] 有 1,3,5三個值是相同的,我要取兩個數(shù)組的交集

let arr1 = [1,2,3,5,8,9]
let arr2= [1,3,5,7]

let res1 = arr2.filter((x)=>{
  return arr1.includes(x)
})

console.log(res1)
//[1,3,5]
2018年3月2日 23:01
編輯回答
陪妳哭

可以采用雙重遍歷,也可以轉成集合使用contains方法。

2017年6月14日 17:09
編輯回答
乖乖噠

比較權威的可以去研究一下underscore和lodash的數(shù)組源碼部分
JS數(shù)組交集 并集 差集 這篇帖子也可以參考一下

2017年12月13日 12:08
編輯回答
卟乖
let a = ["13096399408"]
let b = ["13096399408", "13096399542"]
let isRepeated = a.length + b.length !== new Set(...a, ...b) // true
2018年7月9日 15:41
編輯回答
好難瘦
    var arrA = [1,2];
    var arrB = [1,2,3,4,5];
    var arrC = [111,222];

    function inArr(arr1,arr2){
        for(var i=0;i<arr1.length;i++){
            for(var o=0;o<arr2.length;o++){
                if(arr1[i] == arr2[0]){
                    return true
                }else{
                    return false
                }
            }
        }
    }
    console.log(inArr(arrA,arrB));      //ture
    console.log(inArr(arrC,arrB));      //fale
2018年7月19日 06:55
編輯回答
鐧簞噯
/**
 * 
 * @desc 判斷兩個數(shù)組是否相等
 * @param {Array} arr1 
 * @param {Array} arr2 
 * @return {Boolean}
 */
function arrayEqual(arr1, arr2) {
    if (arr1 === arr2) return true;
    if (arr1.length != arr2.length) return false;
    for (var i = 0; i < arr1.length; ++i) {
        if (arr1[i] !== arr2[i]) return false;
    }
    return true;
}
2018年6月20日 23:42
編輯回答
逗婦乳
function check(arr1, arr2){
  let result = [];
  let arr = arr1.concat(arr2);
  arr.forEach(function(d,i){
    if(arr.indexOf(d) != i) result.push(d);
  });
  return result;
}

check([1,2,3,4],[8,9,7,2,3,4]);
2017年6月23日 08:34