出于示例的目的,让我们拥有以下对象:
var myobj = {id: 1, text: 'hello world', user_id: 5}
现在假设我们有一个数组:
var objectContainer = []
我们用 x 个 myobj
填充这个 objectContainer
现在我们希望找到 id
值设置为 30
的 myobj
您可以使用循环,但在最坏的情况下,您必须循环遍历整个数组才能找到您的值。
所以我的问题是 JaVaScript
是否有针对这些情况的函数,或者 AngularJs
是否提供了额外的帮助器来解决这个问题?
最佳答案
您有很多不同的解决方案:
Javascript 查找:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find 例子 :
var myobject = objectContainer.find(function(value){ return value.id === 1; });
Angular 过滤器:https://docs.angularjs.org/api/ng/filter/filter
如果您的 ID 是唯一的,您也可以使用映射而不是数组:
示例:
var myobj = {id: 1, text: 'hello world', user_id: 5};
var objectContainer = {};
objectContainer[myobj.id] = myobj;
等
关于javascript - Angular/Javascript 搜索对象键数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31135174/