当前位置: 首页 > 知识库问答 >
问题:

迭代集合时出现的问题

越嘉石
2023-03-14

IM有下一个模型和集合定义:

var Auditoria = Backbone.Model.extend({
   defaults:{
      id: 'undefined',
      user_id: 'undefined',
      user_str: 'undefined',
      user_agent: 'undefined',
      login_from: 'undefined',
      login_date:  'undefined'
   }
});


var AuditoriaList = Backbone.Collection.extend({
   model: Auditoria,
   url: $("#ajax-call").val()
});

var sesiones = new AuditoriaList();
sesiones.fetch({
   async: false
});

日志记录显示,集合创建正确:

{长度:15,模型:数组[15],_byId:对象,构造函数:函数,模型:函数...}

但是,当尝试迭代集合(在渲染视图方法中)时,显然无法正确获取当前元素:

render: function(){
   sesiones.each(function(sesion){
      console.log(sesion);
   }, this);
   return this;
}

console.log,而不是返回模型,返回:

{cid:“c1”,属性:对象,集合:r,_changing:false,_previousAttributes:Object…}

有什么想法吗?。

共有3个答案

云锦
2023-03-14

我猜您希望在控制台日志中看到的是模型数据的JSON表示?试试这个:

console.log( sesion.toJSON() );
赵景曜
2023-03-14

{cid:“c1”,属性:对象,集合:r,_changing:false,_previousAttributes:Object…}

这是你收藏的模型

韩羽
2023-03-14

如果要获取模型的值,应按如下方式迭代集合:

sesiones.forEach(function(model) {
 console.log(model.get('user_str'));
}
 类似资料:
  • 嗨,伙计们,我把这个作为面试问题来回答,但我遇到了麻烦。我熟悉泛型/集合 问题是:所提供的工作区中包含cocI,它是一个类的开始,该类实现了一个迭代器,可用于迭代集合集合。集合集合被传递到类的构造函数中。迭代器应该首先遍历内容深度。 例如,如果集合集合如下所示: 然后迭代器应按以下顺序返回内容:“A”、“B”、“C”、“D”、“E”、“F” Q.在cocI中提供hasNext()和next()方法

  • 假设我有一个包含集合的对象,所述集合上的每个元素都包含一个集合,每个集合都包含一个集合。 我想在最深的对象上迭代,并对其应用相同的代码。 命令式的方法是微不足道的,但有没有一种方法来完成这一切? 我可以看到如何从最深的循环中生成lambda: 但我能做得更多吗?

  • 问题内容: 在Java中为集合的集合设计一个迭代器。迭代器应隐藏嵌套,使您可以迭代属于所有集合的所有元素,就像使用单个集合一样 问题答案: 这是一个可能的实现。请注意,我没有执行remove():

  • 问题内容: 现在,我有一个包含以下代码的程序: 就遍历ArrayList而言,我这样做是否正确? 我得到的错误是: 我将显示其余的代码,但内容相当广泛,如果我没有正确进行迭代,我将认为唯一的可能性是我没有正确初始化。 问题答案: 就遍历Arraylist而言,我这样做是否正确? 否:通过在每次迭代中调用两次,您将始终获得新的迭代器。 编写此循环的最简单方法是使用for- each 构造: 至于 您

  • 我有一个将数据延迟加载到内部向量的结构(但是对于这个例子来说这是不允许的)。然后,我为IntoIterator类型实现了< code>IntoIterator和< code>Iterator: 这给了我一个终生的问题: 引用的生存期应该绑定到< code>LazyStruct,但是我不能改变Iter特性不接受任何生存期说明符。我已经检查了一些类似问题的答案:迭代器通过引用返回项目,生存期问题如何编

  • 问题内容: AFAIK有两种方法: 遍历集合的副本 使用实际集合的迭代器 例如, 和 是否有任何理由偏爱一种方法(例如,出于可读性的简单原因而偏爱第一种方法)? 问题答案: 让我举几个例子,并提出一些避免方案。 假设我们有以下藏书 收集并删除 第一种技术是收集所有要删除的对象(例如,使用增强的for循环),并在完成迭代后删除所有找到的对象。 假设你要执行的操作是“删除”。 如果要“添加”此方法也可