An object and array collector
Classes
Members
-
difference
-
Creates an array of array elements not present in the other arrays using strict equality for comparisons, i.e. ===.
-
head
-
Gets the first n values of the array
-
heap :object|array
-
The collection that being managed
Type:
- object | array
-
tail
-
This method gets all but the first values of array
Methods
-
<static> collect(obj) → {ACollector|OCollector}
-
Collect an object
Parameters:
Name Type Description objarray | object What to collect Returns:
- Type
- ACollector | OCollector
-
<inner> add(key, item)
-
Adds an item to the collection
Parameters:
Name Type Description key* The key to use for the item being added. item* The item to add to the collection. The item is not iterated so that you could add bundled items to the collection -
<inner> add(item)
-
Adds to the top of the collection
Parameters:
Name Type Description item* The item to add to the collection. Only one item at a time can be added -
<inner> append(item)
-
Add to the bottom of the list
Parameters:
Name Type Description item* The item to add to the collection. Only one item at a time can be added -
<inner> at(args)
-
Creates an array of elements from the specified indexes, or keys, of the collection. Indexes may be specified as individual arguments or as arrays of indexes
Parameters:
Name Type Description argsindexes The indexes to use -
<inner> compact()
-
Modifies the collection with all falsey values of array removed. The values false, null, 0, "", undefined and NaN are all falsey.
-
<inner> countBy(query, iterator, thisobj) → {object}
-
Creates an object composed of keys returned from running each element of the collection through the given callback. The corresponding value of each key is the number of times the key was returned by the callback.
Parameters:
Name Type Argument Description queryobject <optional>
A query to evaluate. If you pass in a query, only the items that match the query are iterated over. iteratorfunction thisobjobject <optional>
The value of `this` Returns:
- Type
- object
-
<inner> destroy()
-
Destructor called when the object is destroyed.
-
<inner> each(query, iterator, thisobj)
-
Iterate over each item in the collection, or a subset that matches a query. This supports two signatures: `.each(query, function)` and `.each(function)`. If you pass in a query, only the items that match the query are iterated over.
Parameters:
Name Type Argument Description queryobject <optional>
A query to evaluate iteratorfunction Function to execute against each item in the collection thisobjobject <optional>
The value of `this` -
<inner> flatten(query, iterator,, thisobj) → {number}
-
Flattens a nested array (the nesting can be to any depth). If isShallow is truthy, array will only be flattened a single level. If callback is passed, each element of array is passed through a callback before flattening.
Parameters:
Name Type Argument Description queryobject <optional>
A query to evaluate . If you pass in a query, only the items that match the query are iterated over. iterator,function thisobjobject <optional>
The value of `this` Returns:
- Type
- number
-
<inner> groupBy(query, iterator, thisobj) → {object}
-
Creates an object composed of keys returned from running each element of the collection through the callback. The corresponding value of each key is an array of elements passed to callback that returned the key. The callback is invoked with three arguments: (value, index|key, collection).
Parameters:
Name Type Argument Description queryobject <optional>
A query to evaluate . If you pass in a query, only the items that match the query are iterated over. iteratorfunction thisobjobject <optional>
The value of `this` Returns:
- Type
- object
-
<inner> index(key) → {*}
-
Gets an items by its index
Parameters:
Name Type Description keynumber The index to get Returns:
- Type
- *
-
<inner> key(key) → {*}
-
Get a record by key
Parameters:
Name Type Description key* The key of the record to get Returns:
- Type
- *
-
<inner> map(query, iterator, thisobj)
-
Maps the contents to an array by iterating over it and transforming it. You supply the iterator. Supports two signatures: `.map(query, function)` and `.map(function)`. If you pass in a query, only the items that match the query are iterated over.
Parameters:
Name Type Argument Description queryobject <optional>
A query to evaluate iteratorfunction Function to execute against each item in the collection thisobjobject <optional>
The value of `this` -
<inner> max(query, iterator, thisobj) → {number}
-
Retrieves the maximum value of an array. If callback is passed, it will be executed for each value in the array to generate the criterion by which the value is ranked.
Parameters:
Name Type Argument Description queryobject <optional>
A query to evaluate . If you pass in a query, only the items that match the query are iterated over. iteratorfunction thisobjobject <optional>
The value of `this` Returns:
- Type
- number
-
<inner> min(query, iterator, thisobj) → {number}
-
Retrieves the minimum value of an array. If callback is passed, it will be executed for each value in the array to generate the criterion by which the value is ranked.
Parameters:
Name Type Argument Description queryobject <optional>
A query to evaluate . If you pass in a query, only the items that match the query are iterated over. iteratorfunction thisobjobject <optional>
The value of `this` Returns:
- Type
- number
-
<inner> pluck(query, property) → {*}
-
Reduce the collection to a single value. Supports two signatures: `.pluck(query, function)` and `.pluck(function)`
Parameters:
Name Type Argument Description queryobject <optional>
The query to evaluate. If you pass in a query, only the items that match the query are iterated over. propertystring The property that will be 'plucked' from the contents of the collection Returns:
- Type
- *
-
<inner> push(item)
-
Add an item to the top of the list. This is identical to `add`, but is provided for stack semantics
Parameters:
Name Type Description item* The item to add to the collection. Only one item at a time can be added -
<inner> reduce(query, iterator, accumulator, thisobj) → {*}
-
Reduces a collection to a value which is the accumulated result of running each element in the collection through the callback, where each successive callback execution consumes the return value of the previous execution. If accumulator is not passed, the first element of the collection will be used as the initial accumulator value. are iterated over.
Parameters:
Name Type Argument Description queryobject <optional>
A query to evaluate iteratorfunction The function that will be executed in each item in the collection accumulator* <optional>
Initial value of the accumulator. thisobjobject <optional>
The value of `this` Returns:
- Type
- *
-
<inner> sortBy(query, iterator, thisobj) → {array}
-
Returns a sorted copy of the collection.
Parameters:
Name Type Argument Description queryobject <optional>
The query to evaluate. If you pass in a query, only the items that match the query are iterated over. iteratorfunction thisobjobject <optional>
The value of `this` Returns:
- Type
- array
-
<inner> toArray() → {array}
-
Returns the collection as an array. If it is already an array, it just returns that.
Returns:
- Type
- array
-
<inner> toJSON() → {object}
-
Supports conversion to a JSON string or for passing over the wire
Returns:
-
- Type
- object
-
- Type
- Object | array
-