BackboneJS collection.comparator屬性
冇有比較器用於集合。為了維持有序集合,我們使用比較屬性。
語法
collection.comparator
示例
<!DOCTYPE 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: ", JSON.stringify(myval) ); </script> </body> </html>
輸出
讓我們進行以下步驟來看看上麵的代碼工作:
-
保存上述代碼到文件comparator.html
-
在瀏覽器打開這個HTML文件。