从一个Array对象中提取关键值,并使用下划线javascript从其他对象中提取值进行筛选

Extract key values from one Array object and filter from other objects with the extracted values with underscore javascript

本文关键字:提取 对象 下划线 javascript 筛选 其他 键值 一个 Array      更新时间:2023-09-26
var myArray = [{
    "name": "John Doe",
    "age": 29
}, {
    "name": "Anna Smith",
    "age": 24
}];
var myAnotherArray = [{
    "name": "John Doe",
    "age": 29
}, {
    "name": "Anna Smith",
    "age": 24
}, {
    "name": "Peter Jones",
    "age": 39
}, {
    "name": "Gabby",
    "age": 24
}, {
    "name": "Julian",
    "age": 29
}, {
    "name": "George",
    "age": 39
}];

我想从第一个数组中提取所有年龄值,然后从第二个数组中过滤提取的年龄值

您可以使用pluckmyArray获得所有age的数组。然后您可以使用filter,根据年龄筛选另一个数组。

var myArray = [{
  "name": "John Doe",
  "age": 29
}, {
  "name": "Anna Smith",
  "age": 24
}];
var myAnotherArray = [{
  "name": "John Doe",
  "age": 29
}, {
  "name": "Anna Smith",
  "age": 24
}, {
  "name": "Peter Jones",
  "age": 39
}, {
  "name": "Gabby",
  "age": 24
}, {
  "name": "Julian",
  "age": 29
}, {
  "name": "George",
  "age": 39
}];
var ages = _.pluck(myArray, 'age');
var filtered = _.filter(myAnotherArray, function(i, l) {
  return _.contains(ages, i.age);
});
console.log(filtered);
document.write(JSON.stringify(filtered));
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>