使用JavaScript函数从数组中获取单个对象[重复]
Posted
技术标签:
【中文标题】使用JavaScript函数从数组中获取单个对象[重复]【英文标题】:Get single object from array using JavaScript functions [duplicate] 【发布时间】:2016-11-23 17:28:59 【问题描述】:我有这个对象数组:
var frequencies = [id:124,name:'qqq',
id:589,name:'www',
id:45,name:'eee',
id:567,name:'rrr'];
我需要通过id
值从上面的数组中获取一个对象。
例如我需要获取 id = 45 的对象。
我试过了:
var t = frequencies.map(function (obj) return obj.id==45; );
但我没有得到想要的对象。
如何使用 javascript 原型函数来实现它?
【问题讨论】:
【参考方案1】:如果您的 id
是独一无二的,您可以使用 find()
var frequencies = ["id":124,"name":"qqq","id":589,"name":"www","id":45,"name":"eee","id":567,"name":"rrr"];
var result = frequencies.find(function(e)
return e.id == 45;
);
console.log(result)
【讨论】:
太棒了!find()
非常完美,因为它只返回数组中的单个条目 :-)【参考方案2】:
你需要filter()
而不是map()
var t = frequencies.filter(function (obj)
return obj.id==45;
)[0];
【讨论】:
过滤方法在 InternetExplorer 中有效吗? @Michael: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… . 过滤方法返回数组(单个对象数组),知道如何返回对象而不是数组吗?以上是关于使用JavaScript函数从数组中获取单个对象[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何在javascript中从多个数组中获取单个数组[重复]