我正在尝试检查我收到的新数据是否针对我持有的对象,我想知道的是,我正在发送的对象的键是否与我当前拥有的对象中的任何键匹配。
所以我捕获了一个像
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/