Ember.js Emberjs:迭代ArrayProxy内容的最佳方式?

Ember.js Emberjs:迭代ArrayProxy内容的最佳方式?,ember.js,Ember.js,通常,我需要遍历Ember.ArrayProxy对象的内容 示例1,我需要建立一个ID列表: var loc = myArrayProxy.get('length') || 0, ids = new Array(), idsList; while(--loc >= 0) { var curObject = myArrayProxy.objectAt(loc); ids.push(curObject.id); } idsList = ids.join(','

通常,我需要遍历Ember.ArrayProxy对象的内容

示例1,我需要建立一个ID列表:

var loc = myArrayProxy.get('length') || 0,
    ids = new Array(),
    idsList;

while(--loc >= 0) {
    var curObject = myArrayProxy.objectAt(loc);
    ids.push(curObject.id);
}
idsList = ids.join(',');
示例2,我需要构建一个基本对象数组(而不是Ember.Object):


问题:有更好的方法吗?“while(-loc>=0)”对我来说似乎很糟糕。

Ember.ArrayProxy提供了许多友好的函数(通过Ember.Array、Ember.Enumerable等)。使用“forEach”通常可以避免循环。在你的第二个例子中,你可以考虑使用“map”。 这里是一个链接。 一定要看:和

编辑:

例如,假设ID的顺序不相关,您的第一个示例可以写成:

var idsList = myArrayProxy.mapProperty('id').join(',');
现在使用“getEach()”和“forEach()”。文档中确实缺少示例。。。谢谢:)
var idsList = myArrayProxy.mapProperty('id').join(',');