【发布时间】:2015-04-06 03:14:20
【问题描述】:
我需要使用_id 值数组按_id 过滤以下对象数组。
var objects = [{
_account: "YzzrzBrO9OSzo6BXwAvVuL5dmMKMqkhOoEqeo",
_id: "055z5gzVyVfzlBnEOqYvcoLL1ZgOWJhkrWMkv2"
}, {
_account: "YzzrzBrO9OSzo6BXwAvVuL5dmMKMqkhOoEqeo",
_id: "LvvrvyrOGOS2e5yE0Bdki45Y1ndVlgfoZ2zoOp"
}, {
_account: "mjj9jp92z2fD1mLlpQYZI1gAd4q4LwTKmBNLz",
_id: "rEEwENwnznCQvkm61wRziKlMRPqaYztnR4vn61"
}, {
_account: "AaaraZrLqLfzRYoAPlb6ujPELWVW4dTK4eJWj",
_id: "944r40rPgPU2nXqzMYolS5nyo6Eo9OuqrlDkB"
}, {
_account: "AaaraZrLqLfzRYoAPlb6ujPELWVW4dTK4eJWj",
_id: "rEEwENwnznCQvkm61wZ9uey62Pjy5YTqgYGDK"
}];
var id_values = [
"rEEwENwnznCQvkm61wZ9uey62Pjy5YTqgYGDK",
"944r40rPgPU2nXqzMYolS5nyo6Eo9OuqrlDkB",
"rEEwENwnznCQvkm61wRziKlMRPqaYztnR4vn61"
];
我相信difference、pull 或without 可能有用,但我无法将它们与 LoDash 上的文档区分开来。我也认为forEach、forIn 或uniq 可能有用。我能够使用reject 过滤掉其中一个对象:
_.reject(objects, {
_id: "rEEwENwnznCQvkm61wZ9uey62Pjy5YTqgYGDK"
});
这仍然不能帮助我解决按数组过滤的需要。结果应该是以下数组:
var result = [{
_account: "YzzrzBrO9OSzo6BXwAvVuL5dmMKMqkhOoEqeo",
_id: "055z5gzVyVfzlBnEOqYvcoLL1ZgOWJhkrWMkv2"
}, {
_account: "YzzrzBrO9OSzo6BXwAvVuL5dmMKMqkhOoEqeo",
_id: "LvvrvyrOGOS2e5yE0Bdki45Y1ndVlgfoZ2zoOp"
}];
【问题讨论】:
标签: javascript arrays functional-programming lodash