【发布时间】:2017-03-14 19:31:40
【问题描述】:
我有一个用例,我有一个可变值的对象,我需要获取所有这些具有特定值的键。例如,这是一个示例对象:
myObject = {
Person1: true,
Person2: false,
Person3: true,
Person4: false
};
键名会有所不同,但有效值为真或假。我想获取一个值为 true 的名称数组:
myArray2 = [
'Person1',
'Person3
];
我一直在尝试结合使用各种 lodash 函数,例如 _.key() 和 _.filter,但没有成功。我怎样才能做到这一点?我对纯 JS 或 Lodash 选项持开放态度。
更新:我接受了下面 mhodges 的回答作为接受的答案,尽管其他人给了我相同的答案。基于此,我想出了一个 Lodash 版本:
var myArray = _(myObject).keys().filter(function(e) {
return myObject[e] === true;
}).value();
【问题讨论】:
标签: javascript arrays object lodash