0

在 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;
}

}

任何帮助将不胜感激。

4

2 回答 2

0

您也许可以从一个集合开始,将其转换为数组,完成您的工作,然后将其转换回集合?

于 2013-06-27T14:47:58.290 回答
0

您可以对任何您想要的东西使用for循环。实际上,它们与数组没有任何特别的关系,除了使用for循环来遍历数组的元素是很常见的。您问题的真正症结在于“学校”对象是否具有“长度”属性。如果是这样,并且该值是一个数字,那么根本没有问题。

于 2013-06-27T14:48:26.810 回答