ReactJS:检查数组的值是不是在对象内[重复]
Posted
技术标签:
【中文标题】ReactJS:检查数组的值是不是在对象内[重复]【英文标题】:ReactJS: Check if values of array is inside object [duplicate]ReactJS:检查数组的值是否在对象内[重复] 【发布时间】:2021-07-22 17:13:08 【问题描述】:我有一个这样的对象:
let column = ["A", "B", "C", "D"]
validation:
type: ...
id: ...
// and possible report that could exists or not
reportA: ...
reportB: ...
//other possible reports added
我有一列有 4 个标签,我必须检查验证对象中是否存在为该列创建的报告。
所以我应该检查validation.report“column”是否存在,如果存在我将report[“column”]的值保存在状态中,我也会做一个调用函数。
如何检查验证对象中的列是否有对应的报告?
我尝试过这样的事情:
column.forEach( value =>
if(this.state.validation + `report$value`)
setState(....)
else
this.getData(value)
它总是打印我,因为数据存在于 this.state.validation 中
【问题讨论】:
【参考方案1】:您可以使用方括号访问对象的属性。
const column = ["A", "B", "C", "D"];
const state =
validation:
reportA: ,
reportB: ,
column.forEach((value) =>
if(state.validation[`report$value`] != null)
console.log(value); // prints A and B
);
您在 if 子句中所做的是对“[object Object]reportA”(A 到 D)的真实检查,这始终是正确的。 + 运算符将其视为字符串。
【讨论】:
以上是关于ReactJS:检查数组的值是不是在对象内[重复]的主要内容,如果未能解决你的问题,请参考以下文章