根据对象的值过滤对象数组

时间:2016-08-24 19:23:35

标签: javascript arrays object

我有一个包含多个对象的数组。我想使用名为types的属性检索对象,该属性是一个数组,具有一个名为“zoom”的条目。以下是对象数组的样子:

[Object, Object, Object]
0: Object
1: Object
2: Object
  exclude: "0"
  file: "/m/a/max_wind_zoom.jpg"
  position: "7"
  types: Array[1]
     0: "zoom"

所以我想在这种情况下只提取对象2,因为它的属性types有一个条目zoom

我真的很困惑如何实现这一点。

1 个答案:

答案 0 :(得分:2)

您可以使用Array.prototype.filterObject.prototype.hasOwnProperty

[Object, Object, Object].filter(function (o) {
    return o.hasOwnProperty('types') && o.types.indexOf('zoom') > -1;
})