我想通过对象中的值查找键,我发现 lodash 为我们提供了方便的 api findKey
可以帮助我。
但我的问题是,findKey
如何工作?这与哈希公共(public)键值映射不同吗?
我对此一无所知,如果可以的话,你能给我一些例子来比较吗?
感谢您的宝贵时间!
最佳答案
Lodash是一个开源库,您可以检查其源代码以检查其所有功能的实现。
https://github.com/lodash/lodash/blob/master/lodash.js
findKey
可能可以追溯到第 716 行的 baseFindKey
函数:
function baseFindKey(collection, predicate, eachFunc) {
var result;
eachFunc(collection, function(value, key, collection) {
if (predicate(value, key, collection)) {
result = key;
return false;
}
});
return result;
}
它的作用是遍历集合,并对集合内的每个成员运行谓词检查以查看该成员是否与谓词匹配。
如果匹配,则 key 将作为结果返回。
关于javascript - lodash中findKey的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38008768/