【发布时间】:2015-05-20 14:53:00
【问题描述】:
我有一个身份验证方案,允许用户成为多家公司的员工。因此,当他们通过access_token 进行身份验证时,access_token 允许他们对他们所在的任何一家公司进行交易。因此,基本上用户只需一次登录,无需注销即可与所有公司进行交互。
每当他们试图采取行动时,我都需要确保他们是他们试图改变的公司的员工。
授权函数在其回调中有一个employees 对象。这是一个这样的列表:
[ { _id: 555c990c37b3af9214754416,
company: 555c97d6b0b7e88d140810c6,
user: 555c990c37b3af9214754415,
__v: 0,
date_added: Wed May 20 2015 10:23:07 GMT-0400 (EDT),
permissions: { write: true, read: true } },
{ _id: 555c994937b3af921475441b,
company: 555c992537b3af9214754417,
user: 555c990c37b3af9214754415,
__v: 0,
date_added: Wed May 20 2015 10:23:07 GMT-0400 (EDT),
permissions: { write: true, read: true } } ]
每次调用 API 时都会执行此操作,即会检查用户的employee 对象列表;所以我想以最快和最简单的方式从每个对象中选择公司字段。虽然这可以使用 for 循环和编译 company 列表轻松完成,但我需要它更简洁。
这种类型的事情有没有一种方法,一种在每个索引处选择一个字段而不循环的方法,或者在幕后完成循环?
【问题讨论】:
-
你能用lodash’s
_.pluck吗? -
@minitech,这似乎可以工作,但它返回的是一个对象而不是一个数组,有什么想法吗?
-
你是如何使用它的?
-
var companies = lodash.pluck(employees, 'company'); console.log(companies); console.log(typeof(companies));Employees 是一个对象,所以这可能是问题所在。 -
@minitech,如果您发布答案,我会接受。
标签: javascript loops indexing