function(key, value) {
    var exactValue = function(item) { return get(item, key) === value; },
        hasValue = function(item) { return !!get(item, key); },
        use = (arguments.length === 2 ? exactValue : hasValue);

    return this.reject(use);
  }
function(key, value) {
    var exactValue = function(item) { return get(item, key) === value; },
        hasValue = function(item) { return !!get(item, key); },
        use = (arguments.length === 2 ? exactValue : hasValue);

    return this.reject(use);
  }
function ( key , value ) { var exactValue = function ( item ) { return get ( item , key ) === value ; } , hasValue = function ( item ) { return ! ! get ( item , key ) ; } , use = ( arguments . length === 2 ? exactValue : hasValue ) ; return this . reject ( use ) ; }
Returns an array with the items that do not have truthy values for
key.  You can pass an optional second argument with the target value.  Otherwise
this will match any property that evaluates to false.

@method rejectBy
@param {String} key the property to test
@param {String} [value] optional value to test against.
@return {Array} rejected array
Returns an array with the items that do not have truthy values for key . You can pass an optional second argument with the target value . Otherwise this will match any property that evaluates to false .