build/rekord.js
function(collection, out, equals)
  {
    var target = out || this.cloneEmpty();
    var equality = equals || equalsStrict;

    for (var i = 0; i < this.length; i++)
    {
      var a = this[ i ];
      var exists = false;

      for (var j = 0; j < collection.length && !exists; j++)
      {
        exists = equality( a, collection[ j ] );
      }

      if (!exists)
      {
        target.push( a );
      }
    }

    return target;
  }
function(collection, out, equals)
  {
    var target = out || this.cloneEmpty();
    var equality = equals || equalsStrict;

    for (var i = 0; i < this.length; i++)
    {
      var a = this[ i ];
      var exists = false;

      for (var j = 0; j < collection.length && !exists; j++)
      {
        exists = equality( a, collection[ j ] );
      }

      if (!exists)
      {
        target.push( a );
      }
    }

    return target;
  }
function ( collection , out , equals ) { var target = out || this . cloneEmpty ( ) ; var equality = equals || equalsStrict ; for ( var i = 0 ; i < this . length ; i ++ ) { var a = this [ i ] ; var exists = false ; for ( var j = 0 ; j < collection . length && ! exists ; j ++ ) { exists = equality ( a , collection [ j ] ) ; } if ( ! exists ) { target . push ( a ) ; } } return target ; }
Returns a collection with elements that exist in this collection but does
not exist in the given collection.

```javascript
var a = Rekord.collect(1, 2, 3, 4);
var b = Rekord.collect(1, 3, 5);
var c = a.subtract( b ); // [2, 4]
```

@method
@memberof Rekord.Collection#
@param {Array} collection -
The array of elements that shouldn't exist in the resulting collection.
@param {Array} [out=this.cloneEmpty()] -
The array to place the elements that exist in this collection but not in
the given collection. If this is not given - a collection of this type
will be created.
@param {equalityCallback} [equals=Rekord.equalsStrict] -
The function which determines whether one of the elements that exist in
this collection are equivalent to an element that exists in the given
collection.
@return {Array} -
The collection of elements that exist in this collection and not the
given collection.
Returns a collection with elements that exist in this collection but does not exist in the given collection .