gpt4 book ai didi

javascript:从字典键获取对象的索引

转载 作者:行者123 更新时间:2023-12-02 17:19:46 25 4
gpt4 key购买 nike

我的数据数组

data : [
{
"name": "Autauga, AL",
"value": 5.6
},
{
"name": "Baldwin, AL",
"value": 5.3
},...
]

如果我只有名称“Autauga, AL”,如何检索数组对象的索引?我知道暴力循环。有更好的办法吗?

最佳答案

在 ECMAScript 5.1+ 中,您可以使用 Array#filter 方法获取实际对象:

data.filter(function(item){return item.name == 'Autauga, AL'})[0]

不过,这并不能让你获得索引。你可以这样做:

data.map(function(item,index){
return [item, index]
}).filter(function(a){
return a[0].name == 'Autauga, AL'
})[0][1]

这些方法最终仍然在幕后使用循环,但我想它们看起来更酷..

为了高效访问,您可以为目标字段建立索引:

var dataIndexByName = {}, i, len;
for (i=0, len=data.length; i<len; ++i) {
dataIndexByName[data[i].name] = i
}

之后您只需查找dataIndexByName['Autauga, AL']。这也具有在较旧的实现中工作的优点。不过,如果给定的名称可能在原始数组中出现多次,情况就会变得更加复杂。

关于javascript:从字典键获取对象的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24072334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com