BackboneJS - Collection Pluck


Advertisements

Description

It retrieves the attributes from each model in the collection.

Syntax

collection.pluck(attribute)

Parameters

attribute − It represents the property of a defined model.

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">
         var LangNames  = Backbone.Model;          //'LangNames' is a model name
         var langauges = new Backbone.Collection;  //'langauges' is a collection instance

         //The collection instance used with comparator() method to compare the items and display them 
         //in descending order
         langauges.comparator = function(value1, value2) {

            //The comparator returns -1, when the first model should display before the second model
            if (value1.get('name') > value2.get('name')) return -1;

            //It returns -1, when the first model should display after the second model
            if (value2.get('name') > value1.get('name')) return 1;
            return 0;
         };
         langauges.add(new LangNames({name: "Java"}));
         langauges.add(new LangNames({name: "PHP"}));
         langauges.add(new LangNames({name: "HTML"}));

         //The pluck() method returns an attribute, by using "name" attribute from the model in the collection
         document.write("Attributes returned on pluck('name'): ",langauges.pluck('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 pluck.htm file.

  • Open this HTML file in a browser.

backbonejs_collection.htm
Advertisements