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

Angularjs 下划线,检查对象数组中是否存在键,angularjs,underscore.js,Angularjs,Underscore.js,我试图对照我持有的对象检查我接收的新数据,我试图找出的是,我正在发送的对象的键是否与我当前拥有的对象中的任何键匹配 所以我抓住了一个物体,比如 myObj = [{"one": 1}, {"two": 2 },{"three" : 3}]; 我收到一个单一的物体,比如 {"three" : 5 } 我只想对照对象数组(myObj)检查这个对象,看看里面是否有键“3”的东西(我不关心值,只关心键匹配),这样我就可以将它弹出到一个if语句中进行分离- if( array of objects (

我试图对照我持有的对象检查我接收的新数据,我试图找出的是,我正在发送的对象的键是否与我当前拥有的对象中的任何键匹配

所以我抓住了一个物体,比如

myObj = [{"one": 1}, {"two": 2 },{"three" : 3}];
我收到一个单一的物体,比如

{"three" : 5 }
我只想对照对象数组(myObj)检查这个对象,看看里面是否有键“3”的东西(我不关心值,只关心键匹配),这样我就可以将它弹出到一个if语句中进行分离-

if( array of objects (myObj) has key from single object ( "three" ) ) {}
我使用下划线。谢谢

编辑:抱歉,这不清楚,我编辑它是为了澄清-

我握住myObj(对象数组),并被发送一个对象-例如“三个”,我只想拉出单个对象键(object.keys(updateObject)[0]),并检查对象数组中是否有任何对象具有该键


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

您可以使用下划线方法“has”

下面是一个例子:

_.has({"three" : 5 }, "three");
=> true
从:

对象是否包含给定的键?等同于 hasOwnProperty(键),但使用对 hasOwnProperty函数,以防意外重写

您正在查找与回调组合使用的:


Google“javascript检查对象中是否存在键”的可能重复项返回三个相关结果。@SergiuParaschiv:一点也不重复。它的
underline.js
不是重复的,这与使用下划线有关,也许我们应该删除javascript标记以避免混淆任何人使用hasOwnProperty以外的任何东西的唯一原因都是浏览器支持,对吗?这是正确的-但是它没有检查对象数组是否有“三个”。
if (_.some(myObj, function(o) { return _.has(o, "three"); })) {
    …
}