BackboneJS - Comparatore di collezioni
Descrizione
Non esiste un comparatore per una raccolta. Per mantenere la raccolta in un ordine ordinato, utilizziamo la proprietà comparator.
Sintassi
collection.comparator
Esempio
<!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 MyModel = Backbone.Model.extend(); //'LangNames' is a model name
//'mydata' variable contains values to be displayed in sorted order
var mydata = [
{id:4, f_name: 'smith'},
{id:2, f_name: 'cruise'},
{id:3, f_name: 'john'}
];
//'myval' is a collection instance and includes array of values stored in 'mydata' variable
var myval = new Backbone.Collection (mydata, {
model:MyModel, //The model 'MyModel' is specified by overriding the "model" property
comparator: 'f_name' //The 'comparator' maintain the collection in sorted order
});
//Here, displaying the array of values using collection instance 'myval' and 'models' method
document.write("The sorted (based on f_name) order of collection: <br>",
JSON.stringify(myval)
);
</script>
</body>
</html>
Produzione
Eseguiamo i seguenti passaggi per vedere come funziona il codice sopra:
Salva il codice sopra nel file comparator.htm file.
Apri questo file HTML in un browser.