javascript - 如何遍历对象数组以查找 ID 然后返回同级键

标签 javascript arrays object for-loop

下面有一个复杂的对象数组,我有一个 term_id 可以搜索。我试图找到匹配的 term_id,然后从我找到 term_id 的同一个对象返回关联的 ticker: name

container = [Object, Object];

// container:
[
    0: Object {
        tags: [
            0: {
                term: "tag_name_1",
                term_id: 1111
            },
            0: {
                term: "tag_name_2",
                term_id: 2222
            }
        ],
        ticker: {
            name: "ticker1"
        }
    },
    1: Object {
        tags: [
            0: {
                term: "tag_name_3",
                term_id: 3333
            }
        ],
        ticker: {
            name: "ticker2"
        }
    }
]

您将如何实现这一目标? _lodash 有简单的方法吗? ?

最佳答案

// You can do this with native JS:

var container = [{tags: [{term: "tag_name_1",term_id: 1111},{term: "tag_name_2",term_id: 2222}],ticker: {name: "ticker1"}},{tags: [{term: "tag_name_3",term_id: 3333}],ticker: {name: "ticker2"}}];

function search (container, id) {
  var contains = false;
  var result;

  container.forEach(function(obj){
    obj.tags.forEach(function(innerData){
      if (innerData.term_id === id) {
        contains = true;
      }
    })
    if (contains) {
      result = obj.ticker.name;
      contains = false;
    }
  });

  return result;
}

console.log(search(container, 1111));

关于javascript - 如何遍历对象数组以查找 ID 然后返回同级键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31348731/

相关文章:

javascript - 在 JavaScript 中向原型(prototype)对象添加方法

javascript - 如何使用 javascript/jquery 查找 anchor 标记的类别?

javascript - image.onload 函数 - 为什么它不起作用?

c++ - 将固定长度的括号括起来的初始化程序列表传递给函数

javascript - Dom 对象的 Hook 是什么意思

javascript - Javascript 中的数组列表

javascript - 将普通数组转换为html中的对象数组

java - 对二维数组中的对象使用方法

类 [DateTime ('@-1' )] 的 PHP 对象实例作为另一个类中的常量

javascript - 我试图仅返回数组中包含具有真实值的匹配键的项目,其中该键来自单独的数组