javascript - Angular/Javascript 搜索对象键数组

标签 javascript arrays angularjs

出于示例的目的,让我们拥有以下对象:

var myobj = {id: 1, text: 'hello world', user_id: 5}

现在假设我们有一个数组:

var objectContainer = []

我们用 x 个 myobj 填充这个 objectContainer

现在我们希望找到 id 值设置为 30myobj

您可以使用循环,但在最坏的情况下,您必须循环遍历整个数组才能找到您的值。

所以我的问题是 JaVaScript 是否有针对这些情况的函数,或者 AngularJs 是否提供了额外的帮助器来解决这个问题?

最佳答案

您有很多不同的解决方案:

  1. 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; });

  2. Angular 过滤器:https://docs.angularjs.org/api/ng/filter/filter

  3. 如果您的 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/

相关文章:

angularjs - 如何在 angularJS Controller 中编写 Switch 语句

JavaScript 函数在所有其他脚本之后最后执行

javascript用不同的单位对距离进行排序

c - GTK+/C : Passing data through g_signal_connect changes the data

java - 在 Java 中处理 String 数组元素

javascript - AngularJS Controller 在服务之前执行 console.log()

javascript - 在 typescript+Angular 项目中使用 requirejs (-m amd) 的优点和缺点

javascript - “箭头功能”和“功能”是否等效/可互换?

javascript - 未定义的异步 Google Maps API v3 不是函数

javascript - 输入时每 2 分钟触发一次事件