如何在对象集合中找到特定值?

时间:2019-05-28 21:16:35

标签: javascript

我有一个firestore集合,它是一个包含其他对象的对象。我想根据ID搜索这个更大的对象。该对象看起来像这样:

{
  id1: {name: 'a', somethingElse: 'a'},
  id2: {name: 'b', somethingElse: 'b'},
  id3: {name: 'c', somethingElse: 'c'},

}

因为它不是数组,所以我无法使用.find()。如何使用ID搜索对象并返回名称?

这是我到目前为止正在使用的东西:

  function findUser(id, users){
         users.find(function(id{
          return id.name
         })
        }

那当然不起作用

1 个答案:

答案 0 :(得分:4)

您可以通过id直接访问另一个对象内的对象:

obj[id]

let store = {
  id1: {name: 'a', somethingElse: 'a'},
  id2: {name: 'b', somethingElse: 'b'},
  id3: {name: 'c', somethingElse: 'c'},
}

function findUser(id, users){
  return users[id].name;
}

console.log(findUser('id2', store));