angularjs - 下划线,检查对象数组中是否存在键

标签 angularjs underscore.js

我正在尝试检查我收到的新数据是否针对我持有的对象,我想知道的是,我正在发送的对象的键是否与我当前拥有的对象中的任何键匹配。

所以我捕获了一个像

myObj = [{"one": 1}, {"two": 2 },{"three" : 3}];

我收到了一个单一的对象,比如
{"three" : 5 }

我只想根据对象数组(myObj)检查这个对象,看看里面是否有任何带有“三”键的东西(我不关心值,只关心键匹配)所以我可以弹出它变成一个 if 语句来分开像 -
if( array of objects (myObj) has key from single object ( "three" ) ) {}

我正在使用下划线。谢谢!

编辑:对不起,这不清楚,我正在编辑它以澄清 -

我持有 myObj(对象数组),并被发送一个对象 - 例如“三个”,我只想拉出那个对象键(Object.keys(updatedObject)[0])并检查如果对象数组中的任何对象具有该键。

所以 _has 似乎只是为了检查单个对象,而不是对象数组。

最佳答案

您正在寻找 _.some iterator结合使用 _.has 的回调:

if (_.some(myObj, function(o) { return _.has(o, "three"); })) {
    …
}

关于angularjs - 下划线,检查对象数组中是否存在键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28835732/

相关文章:

javascript - Backbone.js/下划线.js : Why isn't my template escaping

javascript - 合并匹配元素并迭代并分离出集合中不匹配的元素

javascript - Angular Directives 如何使用重复数据

jquery - 表中的列 - Angular JS

python - Django Rest Framework Angulars 使用 ModelSerializer 上传文件

ajax - Backbone : throttle a collection filter event on a View

javascript - 防止前端lodash和下划线冲突

javascript - 为什么我不能在 nowjs 中扩展每个人的口袋?

javascript - $digest 的调用不足以触发 $watch - AngularJs

angularjs - Angular JS 中是否有与 React JS 中的 props 相当的东西?