使用id号从JavaScript array.object获取值
基于下面的使用id号从JavaScript array.object获取值,javascript,Javascript,基于下面的var数据。如果我只有编号2,如何获得全名值?数字2对应于id:2,全名为Eric var data = [{ id: 0, full_name: 'None', gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80' }, { i
var数据
。如果我只有编号2
,如何获得全名
值?数字2对应于id:2
,全名为Eric
var data = [{
id: 0,
full_name: 'None',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 1,
full_name: 'John',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 2,
full_name: 'Eric',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 3,
full_name: 'Larry',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 4,
full_name: 'Rick',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 5,
full_name: 'John',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 6,
full_name: 'Eric',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 7,
full_name: 'Larry',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 8,
full_name: 'Rick',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 9,
full_name: 'John',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 10,
full_name: 'Eric',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 11,
full_name: 'Larry',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}, {
id: 12,
full_name: 'Rick',
gravatar_url: 'http://gravatar.com/avatar/31b64e4876d603ce78e04102c67d6144?s=80'
}];
data.filter
将只返回符合给定条件的元素;在这种情况下,id
为2
。因为我们只关心一个元素,所以我们只考虑第一个找到的元素;但是如果不存在,.full_name
将给出一个关于full_name
未在未定义的上定义的错误,因此我们放入一个空对象,以防使用|{}
搜索失败
data.filter
将只返回符合给定条件的元素;在这种情况下,id
为2
。因为我们只关心一个元素,所以我们只考虑第一个找到的元素;但是如果不存在,.full_name
将给出一个关于full_name
未在未定义的上定义的错误,因此我们放入一个空对象,以防使用|{}搜索失败。Amadan的答案很可能比我的答案更好/更能证明失败,但是,如果您知道对象数组将始终包含从Id 0到Id无限的对象,您也可以使用
var wanted = data[number].fullName
Amadan的答案很可能比我的更好/更能防止失败,但如果您知道您的对象数组将始终包含从Id 0到Id无限的对象,您也可以使用
var wanted = data[number].fullName
如果要使ID与数组中的位置相等,可以这样做
function myQuery(id){
return array[id].full_name
}
如果要使ID与数组中的位置相等,可以这样做
function myQuery(id){
return array[id].full_name
}
ES6提供了查找数组中满足某些条件的第一个元素:
var wanted = data.find(elt => elt.id === 2);
如果您没有此选项,可以使用多种多边形填充,包括上面引用的页面上的一种。ES6提供了在满足某些条件的数组中查找第一个元素的功能:
var wanted = data.find(elt => elt.id === 2);
如果您没有此选项,则会有多种多边形填充,包括上面提到的页面上的一种。您的答案很好,但我刚刚意识到我犯了一个错误。基本上,我使用Select2库进行选择,它根据所选项目返回数字0-13。因为我的ID与数组号匹配,所以我弄错了。因此,实际上我需要获取一个返回的数字,并将其与数组项匹配,然后获取该数组/对象项的ID。你能帮个忙吗?那就很简单了:data[id]。全名。你的回答很好,但我刚刚意识到我犯了一个错误。基本上,我使用Select2库进行选择,它根据所选项目返回数字0-13。因为我的ID与数组号匹配,所以我弄错了。因此,实际上我需要获取一个返回的数字,并将其与数组项匹配,然后获取该数组/对象项的ID。你能帮我一下吗?那就很简单了:data[id]。全名
。我只是意识到了这一点,因为我的问题是向后的,数组键号实际上是我的选择返回给我的,但因为它与我的id匹配,我没有意识到。在实际生产中,ID会有所不同,但我使用的代码是在更改事件中从所选项目返回数组键,所以这实际上是我需要的!那么阿玛丹的答案对你来说是正确的@torazaburo感谢您的编辑。我的第一个答案之一是现在英语很好。:-)我只是意识到这一点,因为我的问题是向后的,数组键号实际上是我的选择返回给我的,但由于它匹配我的ID,我没有意识到它。在实际生产中,ID会有所不同,但我使用的代码是在更改事件中从所选项目返回数组键,所以这实际上是我需要的!那么阿玛丹的答案对你来说是正确的@torazaburo感谢您的编辑。我的第一个答案之一是现在英语很好。:-)我正在阅读NodeJS的进度。我可以直接通过babel To node转换代码吗?你可以使用babel node
。我正在阅读node js。我可以直接通过babel To node转换代码吗?您可以使用babel node
。