forOwn  source npm
_.forOwn(object, [iteratee=_.identity])
Iterates over own enumerable properties of an object invoking iteratee
for each property. The iteratee is invoked with three arguments:
(value, key, object). Iteratee functions may exit iteration early by
explicitly returning false.
Arguments
- object (Object) The object to iterate over. 
- [iteratee=_.identity] (Function) The function invoked per iteration. 
Returns (Object)
 Returns object.
Example
function Foo() {
  this.a = 1;
  this.b = 2;
}
Foo.prototype.c = 3;
_.forOwn(new Foo, function(value, key) {
  console.log(key);
});
// => logs 'a' then 'b' (iteration order is not guaranteed)