我有一个非常简单的Backbone示例:
var myModel = Backbone.Model.extend();
var collection = Backbone.Collection.extend({
model: myModel,
});
var c = new collection([
{first_name: 'a',
last_name:'b'
},
{first_name:'c',
last_name:'d'
}
]);
console.log('c is');
console.log(c);
你可以看到jsfiddle here。
当您在Chrome开发者工具中查看此内容时,您可以看到每个Backbone模型上都有一个集合属性,您可以将其扩展并再次进入。见图:
这是什么?为什么会这样?
答案 0 :(得分:0)
在每个模型中,如果它是集合的一部分,则存储一个集合对象。这里发生的事情是你在控制台中查看集合,里面有两个模型。每个模型都有存储在其中的集合对象(与您正在查看的集合相同)。因此,在控制台中查看时,它似乎是一种递归
目前没有在骨干js中记录。有关详细信息,请参阅https://github.com/jashkenas/backbone/issues/1161。