Arrays 如何确定JSON数据中的一个项是否等于数组中的一个值?

Arrays 如何确定JSON数据中的一个项是否等于数组中的一个值?,arrays,json,if-statement,react-native,lodash,Arrays,Json,If Statement,React Native,Lodash,我已找到并试用了.includes,以帮助解决此问题。但是.includes没有按我的预期工作。它实际上在JSON中找到了一个与另一个数组中的值匹配的项,但它只匹配了类似的值: [10,22,12,36,45,206] [{"id":"5","username":"Mike"},{"id":"13","username":"Tom"},{"id":"28","username":"Jake"},{"id":"136","username":"Josie"},{"id":"400","usern

我已找到并试用了
.includes
,以帮助解决此问题。但是
.includes
没有按我的预期工作。它实际上在JSON中找到了一个与另一个数组中的值匹配的项,但它只匹配了类似的值:

[10,22,12,36,45,206]
[{"id":"5","username":"Mike"},{"id":"13","username":"Tom"},{"id":"28","username":"Jake"},{"id":"136","username":"Josie"},{"id":"400","username":"Bill"},{"id":"538","username":"Sam"}]
结果\u posted数组

[10,22,12,36,45,206]
[{"id":"5","username":"Mike"},{"id":"13","username":"Tom"},{"id":"28","username":"Jake"},{"id":"136","username":"Josie"},{"id":"400","username":"Bill"},{"id":"538","username":"Sam"}]
JSON数据中的item.id:

[10,22,12,36,45,206]
[{"id":"5","username":"Mike"},{"id":"13","username":"Tom"},{"id":"28","username":"Jake"},{"id":"136","username":"Josie"},{"id":"400","username":"Bill"},{"id":"538","username":"Sam"}]
我试图弄明白为什么有些值在应该是明显的
false
时仍返回
true
。然后我得出结论,
.includes
实际上是从
结果posted
中提取
36,并将其与
项目id中的
136
匹配。这就是我如何使用
设置if语句的方法。includes

{result_postid.includes(item.id) ?
 <Text>True</Text>
 :
 <Text>False</Text>
}

甚至可以将数组中的值与JSON数据进行比较,并显示一个值是否相等(如果是真的话)?如果不是,错

以下是一种获得您想要的结果的方法。由于您正在将字符串与整数进行比较,因此结果与预期不符

var data=[{“id”:“5”,“用户名”:“Mike”},{“id”:“13”,“用户名”:“Tom”},{“id”:“28”,“用户名”:“Jake”},{“id”:“136”,“用户名”:“Josie”},{“id”:“400”,“用户名”:“Bill”},{“id”:“538”,“用户名”:“Sam”}]
var arr=[10,22,12,36,45206]
console.log(data.map({id})=>arr.includes(+id))

您是否在项目上循环?您能否提供一个显示此行为的工作代码段(Ctrl+M)?这里的一个问题是ID是
String
s,数组中的值是
Number
s,但无论哪种方式,它都会为每个项目生成
false
。是的,我正在循环项目。我是用
交叉点猜的
如果其中一项为真,那么它会将所有内容标记为真@DamonIt如果你提供你正在使用的循环,那会很有帮助,也许那里有一个错误。@Damon我的意思是,我甚至不确定它是否是循环。我正在从数据库中提取数据。起初,
results\u postid
也是json数据,但后来我使用了:
const result\u postid=this.state.data\u one.map(函数(val){return val.postid;}).join(',')仅拉取post id。我应该对其他JSON数据做同样的处理吗?如果您
join
将其转换为逗号分隔的字符串,这可能就是您得到误报的原因。