javascript - 如何检查一个数组是否包含另一个数组的任何项目

标签 javascript jquery arrays

我有两个数组

var master= ["1","2","3"];
var arr = ["1","5"];

我想检查是否 arr包含 master 中的任何项目。基于SO post这里我有以下代码,仅适用于 chrome

var found = arr.some(r => master.indexOf(r) >= 0);

但是它不适用于 IE11。 IE11 抛出错误

JavaScript critical error at line 23, column 44 in https://localhost:44328/js/xxxx.js\n\nSCRIPT1002: Syntax error

我也尝试过

 var found = arr.some(r => master.includes(r) >= 0);

最佳答案

你需要取一个经典函数,因为IE 11只有ES5,那就意味着没有arrow functions也不Array#includes .

var master= ["1", "2", "3"],
    arr = ["1", "5"],
    found = arr.some(function (r) { return master.indexOf(r) >= 0; });

console.log(found);

关于javascript - 如何检查一个数组是否包含另一个数组的任何项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56995499/

相关文章:

java - 在数组中递归移动

javascript - 在外部 JavaScript 中使用 django 模板标签

javascript - Material-UI 数据网格 : Can we expand collapse each row in Material-UI DataGrid

jquery - jquery 中的 "What Tag did I select?"

javascript - 如何重新初始化已从 DOM 中删除的按钮?

javascript - 更改数组输出的 Y 位置

javascript - VSCode 智能感知无法从 JSDoc 检测对象类型

javascript - 将 XXX.db.bson_serializer.ObjectID.createFromHexString(id) 外包给函数?

javascript - 我们可以使用任何类型的 javascript 代码作为外部 .js 文件吗?或者有时需要将其放置在 <head> 中?

javascript - 没有重复数字的随机生成器