开发者问题收集

从对象数组中获取特定值 [{"key":"value"}, {"key":"value"}]

2019-08-15
92

我正在尝试与Processmaker的API互动。 我做了一个简单的表格来验证和获取授权令牌,与其他API进行交互所需。响应是对象的数组。

我需要为API请求获取 prj_uid ,所以我想提取这些请求,但是使用MAP我几乎没有运气。 /p>

如何迭代响应并获取 prj_nameprj_uid in Array中的每个对象?

490525902 < /code>

弦乐响应:

170146342

2个回答

Array.map() 就是您的答案 - 您答对了。 它很简单:

let mappedObject = result.map( el => ({ prj_name, prj_uid }) );

el 是数组中的每个元素,我们使用仅包含 prj_nameprj_uid 的对象构造新数组。因为 el 已经具有具有这些名称的属性,所以我们在构造新对象时不需要编写 { prj_name: el.prj_name },它是隐含的,并且仅使用那里的属性名称就可以完成操作。

mappedObject 现在将保存一个仅由所需属性组成的对象数组。

您可能想阅读有关 map 的更多信息以更好地理解它 - Array.map()

Gibor
2019-08-15

如果 loggedIn 是 json 对象,那么您可以这样做:

const uidNameArr = loggedIn.map((item) => { // returns an array of arrays with the values you want.
  return [item.prj_uid, item.prj_name]
})

uidNameArr.forEach(([uid,name]) => {
 console.log(`${name} has a uid of ${uid}`)
})
technicallynick
2019-08-15