BackboneJS - Collection Clone


Advertisements

Description

It returns a new instance of the collection with an identical list of models.

Syntax

collection.clone()

Example

<!DOCTYPE html>
<html>
   <head>
      <title>Collection Example</title>
      <script src = "https://code.jquery.com/jquery-2.1.3.min.js"
         type = "text/javascript"></script>
      
      <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js"
         type = "text/javascript"></script>
      
      <script src = "https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js"
         type = "text/javascript"></script>
   </head>
   
   <body>
      <script type = "text/javascript">
         
         //'Person' is a model name
         var Person  = Backbone.Model.extend();

         //The model instance 'person' contains 'name' attribute
         var person = new Person ({
            name: 'Sachin Tendulkar'
         });
         
         var MyCollection = Backbone.Collection.extend ({
            model: Person   //model is override by specifying the "model" property of collection class
         });
         var myCollection = new MyCollection();

         // The clone() method uses get method to retrieve the 'name' attribute
         var details = myCollection.clone(person.get('name'));

         //The variable 'details' assigns the value for 'name' as 'M.S.Dhoni'
         details.name = "M.S.Dhoni";
         document.write("The new instance of collection is: ",JSON.stringify(details.name));
      </script>
      
   </body>
</html>

Output

Let us carry out the following steps to see how the above code works −

  • Save the above code in the clone.htm file.

  • Open this HTML file in a browser.

backbonejs_collection.htm
Advertisements