我获取以下对象数组并找到特定对象属性的匹配项 这是数组
我试图查找路径是否等于reqPath,如果是,则退出并返回true。
{
"prov": [
{
"sa": {
"path": "test2",
"fn": "save"
},
"del": {
"path": "test1",
"fn": "delete"
}
}
]
}
以下代码正常工作但我的问题是有一种方法可以使用loadash或其他工具更好/更好地编写它?
validatePath: function (configs, reqPath) {
var isValid = false;
_.each(configs, function (config) {
_.each(config, function (providers) {
providers.forEach(function (keys) {
_.each(keys, function (properties) {
if (properties.path === reqPath) {
isValid = true;
}
});
});
});
});
return isValid;
}
};
答案 0 :(得分:0)
var passed = _.filter(configs, function(config) {
return config.prov.some(function(obj) {
return obj.path === reqPath;
});
});
这将过滤那些具有至少一个通过过滤器的属性对象的提供者的配置。