通过ID在JavaScript对象数组中查找对象
本文翻译自:Find object by id in an array of JavaScript objects
I've got an array: 我有一个数组:
myArray = [{'id':'73','foo':'bar'},{'id':'45','foo':'bar'}, etc.]
I'm unable to change the structure of the array. 我无法更改数组的结构。 I'm being passed an id of 45
, and I want to get 'bar'
for that object in the array. 我正在传递id为45
,并且我想为数组中的该对象获取'bar'
。
How do I do this in JavaScript or using jQuery? 如何在JavaScript或jQuery中做到这一点?
#1楼
参考:https://stackoom.com/question/Utkc/通过ID在JavaScript对象数组中查找对象
#2楼
A generic and more flexible version of the findById function above: 上面的findById函数的通用且更灵活的版本:
// array = [{key:value},{key:value}]
function objectFindByKey(array, key, value) {for (var i = 0; i < array.length; i++) {if (array[i][key] === value) {return array[i];}}return null;
}var array = [{'id':'73','foo':'bar'},{'id':'45','foo':'bar'}];
var result_obj = objectFindByKey(array, 'id', '45');
#3楼
You may try out Sugarjs from http://sugarjs.com/ . 您可以从http://sugarjs.com/试用Sugarjs。
It has a very sweet method on Arrays, .find
. 它在数组.find
上有一个非常好的方法。 So you can find an element like this: 因此,您可以找到这样的元素:
array.find( {id: 75} );
You may also pass an object with more properties to it to add another "where-clause". 您还可以将具有更多属性的对象传递给它,以添加另一个“ where-clause”。
Note that Sugarjs extends native objects, and some people consider this very evil... 请注意,Sugarjs扩展了本机对象,有些人认为这非常邪恶。
#4楼
Underscore.js has a nice method for that: Underscore.js有一个不错的方法:
myArray = [{'id':'73','foo':'bar'},{'id':'45','foo':'bar'},etc.]
obj = _.find(myArray, function(obj) { return obj.id == '45' })
#5楼
Use: 采用:
var retObj ={};
$.each(ArrayOfObjects, function (index, obj) {if (obj.id === '5') { // id.toString() if it is intretObj = obj;return false;}});
return retObj;
It should return an object by id. 它应该通过id返回一个对象。
#6楼
You can use filters, 您可以使用过滤器
function getById(id, myArray) {return myArray.filter(function(obj) {if(obj.id == id) {return obj }})[0]}get_my_obj = getById(73, myArray);
通过ID在JavaScript对象数组中查找对象相关推荐
- java 对象查找_Java如何从数组中查找对象元素?
在Java中,如何从数组中查找对象元素? 示例 以下示例使用Contains方法来搜索数组中的String对象. package com.yiibai; import java.util.*; pub ...
- 用 JavaScript 替换数组中的对象
由于 JavaScript 是一种动态语言,本文将讨论如何在 JavaScript 中轻松替换存储在数组中的不同对象. 在 JavaScript 中,数组中的对象和类型是动态的或可以更改的.我们可以在 ...
- es6 数组找最大值_在对象数组中查找属性的最大值
我正在寻找一种非常快速,干净且有效的方法来获取以下JSON切片中的最大" y"值: [ { "x": "8/11/2009", " ...
- Javascript vue 数组中的对象分离 获取对象属性名称 对象属性值
"productItemInfo":[{"字面颜色":"蓝色系/深蓝色"},{"字边颜色":"金属色/拉丝银& ...
- 通过属性值从对象数组中获取JavaScript对象[重复]
本文翻译自:Get JavaScript object from array of objects by value of property [duplicate] This question alr ...
- 如何从JavaScript中的对象数组中获得不同的值?
本文翻译自:How to get distinct values from an array of objects in JavaScript? Assuming I have the followi ...
- js获取对象数组中的id集合
js获取对象数组中的id集合 const ids = Array.from(this.checkList,({ id }) => id); // ["16921C72E0C64002& ...
- JavaScript 专题(九)数组中查找指定元素
JavaScript 专题(九)数组中查找指定元素 上一篇文章中,我们了解了数组扁平化的思想,并学习了 lodash 是如何处理数组扁平化的. 这次我们来讨论在数组中查找元素时所用的一些方法,并且参考 ...
- 查找对象数组中某属性的最大最小值
查找对象数组中某属性的最大最小值的快捷方法 例如要查找array数组中对象的value属性的最大值,这里记为maxVal var array=[{"index_id": 119,& ...
最新文章
- thrift使用小记_CUDev-ChinaUnix博客
- 学习 Message(17): WM_SYSCOMMAND 消息[一]
- cassandra集群环境搭建——注意seeds节点,DHT p2p集群管理难道初始化都应如此吗?...
- 联想android手机驱动,驱动天空 - 手机驱动 - 联想手机 lenovo
- 【PHP】常用日期函数
- ustc小道消息20211225
- Rayeager PX2开发板 评测系列之初见
- render vue 添加类_详解vue 动态加载并注册组件且通过 render动态创建该组件
- 根据系统创建文件路径
- HashMap源码注释
- 高等数学复盘 | 第七册下册第八章——向量代数与空间解析几何思维导图梳理(复习专用)
- 模电、数电、电力电子、开关电源基础知识总结
- 办公用品管理系统服务器版,恒达办公用品管理系统
- FLAC无损音频播放
- java pdf 富文本_Java生成pdf,兼富文本
- android 打印小票格式,安卓端小票机设置
- 物联网平台技术架构和应用场景
- KaTeX数学公式总结
- android auto华为版_auto.js的使用以及薅羊毛插件示例
- 代理服务器可能有问题,或地址不正确的解决方法