Collections are ordered sets of Models. We just need to extend the backbone's collection class to create our own collection. Any event that is triggered on a model in a collection will also be triggered on the collection directly. This allows you to listen for changes to specific attributes in any model in a collection.
The following table lists down all the methods which you can use to manipulate the BackboneJS-Collection −
S.No. | Methods & Description |
---|---|
1 |
extend
Extends the backbone's collection class to create a collection. |
2 |
model
To specify the model class, we need to override the model property of the collection class. |
3 |
initialize
When a model instance is created, it is invoked by defining the initialize function when the collection is created. |
4 |
models
Array of models which are created inside the collection. |
5 |
toJSON
Returns the copy of the attributes of a model using the JSON format in the collection. |
6 |
sync
It represents the state of the model and uses the Backbone.sync to display the state of the collection. |
7 |
add
Add a model or array of models to the collection. |
8 |
remove
Removes a model or array of models from the collection. |
9 |
reset
It resets the collection and populates with new array of models or will empty the entire collection. |
10 |
set
It is used to update the collection with a set of items in a model. If any new model is found, the items will be added to that model. |
11 |
get
It is used to retrieve the model from a collection by using the idor cid. |
12 |
at
Retrieve the model from a collection by using specified index. |
13 |
push
It is similar to the add() method which takes the array of models and pushes the models to the collection. |
14 |
pop
It is similar to the remove() method which takes the array of models and removes the models from the collection. |
15 |
unshift
Add a specified model at the beginning of a collection. |
16 |
shift
It removes the first item from the collection. |
17 |
slice
Displays the shallow copy of the elements from the collection model. |
18 |
length
Counts the number of models in the collection. |
19 |
comparator
It is used to sort the items in the collection. |
20 |
sort
Sorts the items in the collection and uses comparator property in order to sort the items. |
21 |
pluck
Retrieves the attributes from the model in the collection. |
22 |
where
It is used to display the model by using the matched attribute in the collection. |
23 |
findWhere
It returns the model, that matches the specified attribute in the collection. |
24 |
url
It creates an instance of the collection and returns where resources are located. |
25 |
parse
Returns the collection's data by passing through the response object and represents the data in JSON format. |
26 |
clone
It returns the shallow copy of the specified object. |
27 |
fetch
It extracts the data from the model in the collection using the sync method. |
28 |
create
It creates a new instance of the model in the collection. |
The following table lists down the Underscore.js methods which provides their functionality to be used on the Backbone.Collection.
S.No. | Methods & Description |
---|---|
1 |
_.each(list, iteratee, [context]) Iterates each of the elements in the collection using the iteratee function. |
2 |
_.map(list, iteratee, [context]) It maps each value and displays them in a new array of values using the iteratee function. |
3 |
_.reduce(list, iteratee, memo, [context]) It reduces the list of values into a single value and it also known as inject and foldl. |
4 |
_.reduceRight(list, iteratee, memo, [context]) It is the right associative version of reduce. |
5 |
_.find(list, predicate, [context]) It finds each value and returns the first one which passes the predicate or test. |
6 |
_.filter(list, predicate, [context]) It filters each value and returns the array of values which passes the predicate or test. |
7 |
_.reject(list, predicate, [context]) It returns the rejected elements in the list which do not pass the predicted values. |
8 |
_.every(list, predicate, [context]) It returns true, if elements in the list pass the predicted values. |
9 |
_.some(list, predicate, [context]) It returns true, if elements in the list pass the predicted values. |
10 |
_.contains(list, value, [fromIndex]) It returns true, if a value is present in the list. |
11 |
_.invoke(list, methodName, *arguments) It invokes the method name using methodName() on each value in the list. |
12 |
_.max(list, [iteratee], [context]) It specifies the maximum value in the list. |
13 |
_.min(list, [iteratee], [context]) It specifies the minimum value in the list. |
14 |
_.sortBy(list, [iteratee], [context]) It returns the sorted elements in the ascending order by using iteratee in the list. |
15 |
_.groupBy(list, [iteratee], [context]) It divides the collection values into the sets, grouped by using the iteratee in the list. |
16 |
_.shuffle(list) It returns the shuffled copy of the list. |
17 |
_.toArray(list) It defines an array of the list. |
18 |
_.size(list) It defines the number of values in the list. |
19 |
_.first(array, [n]) It specifies the first element of the array in the list. |
20 |
_.initial(array, [n]) It returns everything, but specifies the last entry of the array in the list. |
21 |
_.last(array, [n]) It specifies the last element of the array in the list. |
22 |
_.rest(array, [index]) It defines the remaining elements in the array. |
23 |
_.without(array, *values) It returns the values of all instances which are removed in the list. |
24 |
_.indexOf(array, value, [isSorted]) It returns the value if it is found at a specified index or returns -1, if it is not found. |
25 |
_.indexOf(array, value, [fromIndex]) It returns the last occurrence of the value in the array or returns -1, if it is not found. |
26 |
_.isEmpty(object) It returns true if there are no values in the list. |
27 |
_.chain(obj) It returns a wrapped object. |