libs/lodash.js
function baseFor(object, callback, keysFunc) {
      var index = -1,
          props = keysFunc(object),
          length = props.length;

      while (++index < length) {
        var key = props[index];
        if (callback(object[key], key, object) === false) {
          break;
        }
      }
      return object;
    }
function baseFor(object, callback, keysFunc) {
      var index = -1,
          props = keysFunc(object),
          length = props.length;

      while (++index < length) {
        var key = props[index];
        if (callback(object[key], key, object) === false) {
          break;
        }
      }
      return object;
    }
function baseFor ( object , callback , keysFunc ) { var index = - 1 , props = keysFunc ( object ) , length = props . length ; while ( ++ index < length ) { var key = props [ index ] ; if ( callback ( object [ key ] , key , object ) === false ) { break ; } } return object ; }
The base implementation of `baseForIn` and `baseForOwn` which iterates
over `object` properties returned by `keysFunc` executing the callback
for each property. Callbacks may exit iteration early by explicitly
returning `false`.

@private
@param {Object} object The object to iterate over.
@param {Function} callback The function called per iteration.
@param {Function} keysFunc The function to get the keys of `object`.
@returns {Object} Returns `object`.
The base implementation of baseForIn and baseForOwn which iterates over object properties returned by keysFunc executing the callback for each property . Callbacks may exit iteration early by explicitly returning false .