I want to create an array of specific attribute values from a Backbone collection.
var days = _.select(
this.collection.models,
function(model) {
return model.attributes.type === 'session';
}
);
days = _.pluck(days, 'attributes'),
days = _.pluck(days, 'date');
This works, but seems inefficient. Is there a way to accomplish the same thing without having to define days three times?
pluck is a convenience method that wraps
map, andmapis available directly on the collection, which should make this easier.assuming you are trying to get the
dateattribute out of your models, you can do this:your select call is also available on the collection directly, as the
filtermethod.you can chain these two together, but it helps if you define methods separately:
this should return the results your looking for… or something close to this at least 🙂