function findValue(obj, f, thisObj = undefined) {
  const key = findKey(obj, f, thisObj);
  return key && obj[key];
}
Searches an object for an element that satisfies the given condition and
returns its value.
@param {?Object<K,V>} obj The object to search in.
@param {function(this:T,V,string,?Object<K,V>):boolean} f The function to
    call for every element. Takes 3 arguments (the value, the key and the
    object) and should return a boolean.
@param {T=} thisObj An optional "this" context for the function.
@return {V} The value of an element for which the function returns true or
    undefined if no such element is found.
@template T,K,V