如何过滤 JavaScript 中数组数组中的通用数组
假设我们有一个这样的数组数组 −
const arr = [ [ "Serta", "Black Friday" ], [ "Serta", "Black Friday" ], [ "Simmons", "Black Friday" ], [ "Simmons", "Black Friday" ], [ "Simmons", "Black Friday" ], [ "Simmons", "Black Friday" ] ];
我们需要编写一个 JavaScript 函数来接受这样的数组。该函数应返回一个新数组,其中包含原始数组中的所有唯一子数组。
代码如下 −
const arr = [
[
"Serta",
"Black Friday"
],
[
"Serta",
"Black Friday"
],
[
"Simmons",
"Black Friday"
],
[
"Simmons",
"Black Friday"
],
[
"Simmons",
"Black Friday"
],
[
"Simmons",
"Black Friday"
]
];
const filterCommon = arr => {
const map = Object.create(null);
let res = [];
res = arr.filter(el => {
const str = JSON.stringify(el);
const bool = !map[str];
map[str] = true;
return bool;
});
return res;
};
console.log(filterCommon(arr));输出
控制台输出 −
[ [ 'Serta', 'Black Friday' ], [ 'Simmons', 'Black Friday' ] ]
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP