通过比较 ''Name'' 获取 API 数组编号
Posted
技术标签:
【中文标题】通过比较 \'\'Name\'\' 获取 API 数组编号【英文标题】:Get API array number by comparing ''Name''通过比较 ''Name'' 获取 API 数组编号 【发布时间】:2021-03-27 12:27:30 【问题描述】:我想将我按下的按钮的名称与一个数组进行比较,以找到匹配的名称,然后选择该数组编号。
我目前有一个 For 循环,它可以从数组中的每个团队获取所有信息,但我只需要一个特定的。
for( var i = 0 ; i <data.api.teams.length; i++)
.lenght 需要是我选择的团队名称对应的值。
例如:我按下一个名称和值为 ''Twente'' 的按钮,我希望 for 循环搜索名称以找到 ''Twente'' 并返回数字(''6' ') 作为一个值,以便在另一个循环中使用。
有人知道我该如何处理这个请求吗?
屏幕截图显示了我从调用中获取的 API 数据,以获取我需要的所有信息。
【问题讨论】:
【参考方案1】:要获取项目的数组索引,您可以使用Array.findIndex
teamIndex = data.api.teams.findIndex(
team => team.name == "Twente";
);
【讨论】:
【参考方案2】:这比你需要的更复杂 - 你不需要手动循环,只需使用 Array.prototype.findIndex()
。
来自MDN:
findIndex()
方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1
,表示没有元素通过测试。
在您的情况下,我们将传递 findIndex()
一个检查名称匹配的函数。
data.api.teams.findIndex(team => team.name == name);
【讨论】:
以上是关于通过比较 ''Name'' 获取 API 数组编号的主要内容,如果未能解决你的问题,请参考以下文章