在'For'循环中使用集合?

时间:2013-06-27 14:44:56

标签: javascript arrays backbone.js collections

在Javascript'for'循环中,是否可以传递骨干集合而不是数组?例如:在下面的示例代码中,schools是一个集合,而不是一个数组。这怎么可能?

var selectedSchool;
var addClasses = function(schools){
    selectedSchool = Alloy.Collections.schools.at(0);
       for(var i = 0; i < schools.length; i++){
    var school = Backbone.Collections.schools.at(i);
    var label = Ti.UI.createLabel({
        text: schools.get('name'),
        height:'auto', 
   };

以下是schools模型中school被定义为集合的位置:

exports.definition = {
    config : {
  "defaults": {
     "title": "-",
     "description": "-"
   },
   "adapter": {
     "type": "rest",
     "collection_name": "schools",
     "base_url" : "/schools/",
   }
},

extendCollection: function(Collection) {        
    _.extend(Collection.prototype, {
        // Extend, override or implement Backbone.Collection 
                 urlRoot: '/schools/',  
                 name: 'schools',
    });

    return Collection;
}

}

任何帮助都会非常感激。

2 个答案:

答案 0 :(得分:0)

你可能有一个集合开始,将它转换为数组,完成你的工作,然后将其转换回集合?

答案 1 :(得分:0)

您可以使用for循环来获取所需内容。它们与数组没有任何关系,除此之外,通常使用for循环来遍历数组的元素。你问题的真正症结在于“学校”对象是否具有“长度”属性。如果是,如果值是数字,则根本没有问题。