javascript - 在javascript中查找一个值是否属于数组

标签 javascript typescript

我有以下 JavaScript 数组

business: [{
      "id": 22,
      "name": "Private",
      "max_mem": 0,
      "gen_roomtype_id": 4,
      "status": 1,
      "type": 0,
      "set_value": 1
    },
    {
      "id": 6,
      "name": "Standard ward",
      "max_mem": 0,
      "gen_roomtype_id": 2,
      "status": 1,
      "type": 0,
      "set_value": 1
    },
    {
      "id": 7,
      "name": "Semi Private",
      "max_mem": 0,
      "gen_roomtype_id": 3,
      "status": 1,
      "type": 0,
      "set_value": 1
    }],      

"gen": [{
      "id": 5,
      "name": "laboratory",
      "description": "",
      "sharing": 0,
      "set_value": 2
    }],

我有一个 idArray 如下

idArray: [5, 7]

我想知道 idArray 值是否属于“gen”数组或 “业务”数组。

最佳答案

您可以使用函数every

此方法假设输入数据是一个对象。

var obj = {  business: [{      "id": 5,      "name": "Private",      "max_mem": 0,      "gen_roomtype_id": 4,      "status": 1,      "type": 0,      "set_value": 1    },    {      "id": 6,      "name": "Standard ward",      "max_mem": 0,      "gen_roomtype_id": 2,      "status": 1,      "type": 0,      "set_value": 1    },    {      "id": 7,      "name": "Semi Private",      "max_mem": 0,      "gen_roomtype_id": 3,      "status": 1,      "type": 0,      "set_value": 1    }  ],  "gen": [{    "id": 5,    "name": "laboratory",    "description": "",    "sharing": 0,    "set_value": 2  }]
};

var idArray = [5, 7];

var resultBusiness = idArray.every(n => obj.business.some(b => b.id === n));
var resultGen = idArray.every(n => obj.gen.some(b => b.id === n));

console.log("All in business: ", resultBusiness);
console.log("All in Gen: ", resultGen);
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 在javascript中查找一个值是否属于数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49279225/

相关文章:

javascript - 无法在 contenteditable div 中一致删除 html

angular - 如何在 typescript 中将日期转换为字符串格式yyyy-mm-dd

javascript - 如何使用Angular从不同的服务器或CDN(运行时)动态加载子级?

jquery - 将应用程序迁移到 Angular 6 : But getting errors while running npm run build --prod. 但命令 npm run build --env=prod 成功运行

angular - ionic 错误地理定位 ionic 未捕获( promise ): TypeError: Object(…) is not a function TypeError: Object(…) is not a function

Javascript 导航帮助

javascript - 如何在 JavaScript 中进行 while 循环倒计时秒数。 (初学者)

javascript - 访问 Nuxt 组件中的 axios 返回数组以便循环

javascript - 在表单提交时关闭 Bootstrap 模式

javascript - TypeScript:声明一个变量,该变量是一个名为 "new"的函数