【问题标题】:Angular - Loop check if value exist inside objectAngular - 循环检查对象内部是否存在值
【发布时间】:2021-04-28 11:30:20
【问题描述】:

我需要帮助来检查对象中是否存在值。

我的对象 = (vagas.etapas)

"Etapas" : {
  "05daf060-87cb-47cf-8c98-65b36941613d" : "Name 1",
  "0bf7aabf-42df-4f7d-86dc-af81e6cef394" : "Name 2",
  "13f8ebda-2b0b-4868-b856-1c88b405d853" : "Name 3",
  "25b9370e-8bf3-464f-ae7c-e72937d2c490" : "Name 4",
  "5a1dfca0-d0b0-4cf7-bc34-12050bafc495" : "Name 5"
},

例如:检查 "Name 3" 是否存在于数组中

属性是随机的,我不能这样做:

for (let e of Object.keys(vaga.Etapas)) {
  if (vaga.Etapas[e].hasOwnProperty("13f8ebda-2b0b-4868-b856-1c88b405d853")) {
  // do something
}

如何在 for ... 循环中实现这一点?

【问题讨论】:

  • 您要检查对象中的value 还是key

标签: javascript arrays angular typescript object


【解决方案1】:

你可以这样做:

const objToFind = "Name 3";

if (Object.values(etapas).indexOf(objToFind >= 0)) {
   console.log('Value present');
} else {
   // not found
}

【讨论】:

  • 我使用 (Object.values(vaga.Etapas[e]).includes(nameToFind) 代替 .indexOf
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-22
  • 2011-09-26
  • 1970-01-01
  • 1970-01-01
  • 2015-12-10
相关资源
最近更新 更多