从对象数组获取键/ ID

时间:2018-08-09 11:29:43

标签: javascript

在JavaScript中,我有以下代码可以在数组中找到特定对象:

records.find(function (obj) { return obj.time === tmp_date; })

是否可以从数组records中获取对象的键/ ID?

2 个答案:

答案 0 :(得分:-1)

数组上的

find()方法将根据条件返回第一个匹配的对象。然后,您可以像访问其他属性一样获取该对象的id

var records = [{time:10, id:1}, {time:20, id:2}, {time:30, id:3}];

var id = records.find(function (obj) { return obj.time === 20; }).id;

console.log(id);

答案 1 :(得分:-1)

假设records看起来像这样(因为您没有提供):

let records = [
  {
     id : 1,
     time : 10
  },
  {
     id : 2,
     time : 20
  }
]

然后您可以通过这种方式简单地获取匹配对象的索引:

 let records = [
      {
         id : 1,
         time : 10
      },
      {
         id : 2,
         time : 20
      }
    ],
    tmp_date = 20,
    index;
    
for(let i in records){
  if(records[i].time===tmp_date){
    index = i;
    break;
  }
}

console.log(`Found time ${tmp_date} at index ${index}.`)