JavaScript 如何检查一个数组是否是另一个数组的子集
任务是使用JavaScript检查一个数组是否是另一个数组的子集。有几种方法,我们将在下面讨论:
方法:
- 使用JavaScript数组的every()方法
- 使用JavaScript数组的some()方法
方法1:使用JavaScript数组的every()方法
这种方法检查第二个数组的每个元素是否都在第一个数组中。
示例: 这个示例使用上面讨论的方法。
// Creating 2 arrays
let arr1 = ["GFG", "Geeks", "Portal",
"Geek", "GFG_1", "GFG_2"];
let arr2 = ["GFG", "Geeks", "Geek"];
// Funtion to check subarray
function GFG_Fun() {
let res = arr2.every(function (val) {
return arr1.indexOf(val) >= 0;
});
let not = "";
if (!res) {
not = "not";
}
// Display the output
console.log("Array_2 is " + not
+ " the subset of Array_1");
}
GFG_Fun();
输出
Array_2 is the subset of Array_1
方法2:使用 JavaScript 的 array.some() 方法
如果第二个数组的某个元素不在第一个数组中,则该方法会返回 false。
示例: 该示例使用了上述讨论的方法。
// Create input arrays
let arr1 = ["GFG", "Geeks", "Portal",
"Geek", "GFG_1", "GFG_2"];
let arr2 = ["GFG", "Geeks", "GeekForGeeks"];
// Function to check subarrays
function GFG_Fun() {
let res = !arr2.some(val => arr1.indexOf(val) === -1);
let not = "";
if (!res) {
not = "not";
}
// Display output
console.log("Array_2 is " + not
+ " the subset of Array_1");
}
GFG_Fun();
输出
Array_2 is not the subset of Array_1