jonjaques
Re:Imperative vs. Declarative
on Tuesday April 02, 2013 @03:47PM (#5481677)
OP could definitely have used more examples, but I think he's on the right track. Where declarative or functional programming comes in really handy is composition. Underscore has a lot of utilities that make it easy.
var genericFilter = function(type, value) {
return function(items) {
return _.filter(items, function(i) {
return i[type] === value;
});
}
};
var sizeFilter = genericFilter('size', selectedSize);
var brandFilter = genericFilter('brand', selectedBrand);
var appliedFilters = _.compose(sizeFilter, brandFilter);
var filteredItems = appliedFilters(items);
// which ends up doing sizeFilter(brandFilter(items));
// edit for sloppy code;
Re:Default Parameters in JavaScript
on Tuesday March 19, 2013 @07:04PM (#5404238)
Library agnostic version if anyone cares for it: https://gist.github.com/jonjaques/3036701