检查带有对象的数组是否包含JS中的对象

时间:2016-06-08 17:58:28

标签: javascript arrays angularjs object multidimensional-array

我正在尝试编写一个函数,可以很容易地知道特定对象键/值是否包含在具有对象的另一个数组中。

我已经尝试过indexOf,但这似乎没有办法。 例如:

/usr/bin/python2.7 /home/heisenberg/hans_wehr/main.py
Total lines 87672
(2019, "Can't initialize character set utf-8 (path: /usr/share/mysql/charsets/)")

Process finished with exit code 1

这是对象:

if(data2.indexOf(data1) > 0){
    console.log("Found!");
    return true;
  }else{
    return false;
  }

我需要一个可以告诉我它是否已经在另一个数组中的函数:

  {
    "movie": {
      "ids": {
        "imdb": "tt2975590"
      }
    }
  }

在这种情况下,它将返回true。 (电影“蝙蝠侠与超人”拥有相同的imdb id。)

有任何帮助吗?谢谢! :d

1 个答案:

答案 0 :(得分:1)

澄清你得到https://github.com/nst/iOS-Runtime-Headers/blob/master/Frameworks/UIKit.framework/UILabel.h。你应该看一下array that contains objects,它将迭代一个数组,如果从回调内部返回true,则返回true。

var search = {
  "movie": {
    "ids": {
      "imdb": "tt2975590"
    }
  }
};

var found = arr.some(function(obj) {
  return obj.movie.ids.imdb == search.movie.ids.imdb;
});

其中arr是电影数组。

您可以使用Array.prototype.some访问对象中的属性,例如:search.moviesearch['movie']将返回:

{
  "ids": {
    "imdb": "tt2975590"
  }
}