JavaScript中检查数组是否包含另一个数组的最佳优化方法是什么?

问题描述 投票:0回答:1

我试图找到一种优化的方法来检查一个数组中是否包含另一个数组。

const result = [['a','b','c'],['d']];
const sample = ['d'];

这里,结果包含一个与样本数组匹配的数组。如何优化一个 "数组"?双环 带长度检查的解决方案?

for(let i = 0 ; i <result.length; i ++){
let arr = result[i];
if(arr.length === sample.length){
  for(let j = 0 ; j <sample.length; j ++){
      if(arr[j] !== sample[j]){
          return false;
      }
  }
  return true;
}
}

寻找一种更快的方法。

javascript arrays optimization multidimensional-array
1个回答
0
投票

你可以简单地这样做。

const result = [
    ['a', 'b', 'c'],
    ['d']
];
const sample = ['d'];
const sample2 = ['a', 'b'];

console.log(result.some(r => JSON.stringify(r) == JSON.stringify(sample)))
console.log(result.some(r => JSON.stringify(r) == JSON.stringify(sample2)))
© www.soinside.com 2019 - 2024. All rights reserved.