当键是字符串时如何比较两个数组-JavaScript

假设以下是我们的第一个数组-

const firstArray = [
   { "name": "John Doe" },
   { "name": "John Smith" },
   { "name": "David Miller" },
   { "name": "Bob Taylor" },
   { "name": "Carol taylor" },
   { "name": "Adam Smith" },
];

假设以下是我们的第二个数组-

const secondArray = [
   { "name": "Adam Smith" },
   { "name": "John Doe" },
   { "name": "David Miller" },
   { "name": "James Taylor" }
];

要进行比较,请使用map()includes()

示例

以下是代码-

const firstArray = [
   { "name": "John Doe" },
   { "name": "John Smith" },
   { "name": "David Miller" },
   { "name": "Bob Taylor" },
   { "name": "Carol taylor" },
   { "name": "Adam Smith" },
];
const secondArray = [
   { "name": "Adam Smith" },
   { "name": "John Doe" },
   { "name": "David Miller" },
   { "name": "James Taylor" }
];
const getAllValue = ({ 'name': name }) => name;
const result = firstArray
   .map(getAllValue)
   .filter(value => secondArray
      .map(getAllValue)
      .includes(value)
   );
console.log(result);

 要运行上述程序,您需要使用以下命令-

node fileName.js.

在这里,我的文件名为demo251.js

输出结果

这将在控制台上产生以下输出-

PS C:\Users\Amit\javascript-code> node demo251.js
[ 'John Doe', 'David Miller', 'Adam Smith' ]